Skip to content

Commit 230e108

Browse files
authored
Revert "Move the tool table of pyproject.toml to a new schema (SchemaStore#4513)" (SchemaStore#4542)
This reverts commit 1e95155.
1 parent a721a84 commit 230e108

File tree

6 files changed

+171
-147
lines changed

6 files changed

+171
-147
lines changed

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
- [Compatible Language Servers and Tools](#compatible-language-servers-and-tools)
2626
- [`redhat-developer/yaml-language-server`](#redhat-developeryaml-language-server)
2727
- [`tamasfe/taplo`](#tamasfetaplo)
28-
- [`tombi-toml/tombi`](#tombi-toml-tombi)
28+
- [`tombi-toml/tombi](#tombi-toml-tombi)
2929
- [`Microsoft/vscode-json-languageservice`](#microsoftvscode-json-languageservice)
3030
- [Other](#other)
3131
- [Troubleshooting](#troubleshooting)

src/schema-validation.jsonc

Lines changed: 0 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -249,7 +249,6 @@
249249
"partial-pyright.json",
250250
"pep-723.json",
251251
"pyproject.json",
252-
"pyproject-tools.json",
253252
"sarif-2.1.0-rtm.0.json",
254253
"sarif-2.1.0-rtm.1.json",
255254
"sarif-2.1.0-rtm.2.json",
@@ -318,7 +317,6 @@
318317
"partial-fusion-texture-metadata.json", // minecraft-texture-mcmeta.json[fusion]
319318
"partial-taskipy.json", // pyproject.json[tool.taskipy]
320319
"poetry.json", // backwards-compat
321-
"pyproject-tools.json",
322320
"setuptools.json", // backwards-compat
323321
"scikit-build.json", // backwards-compat
324322
"azure-deviceupdate-manifest-definitions-4.0.json",
@@ -1037,7 +1035,6 @@
10371035
"partial-taskipy.json",
10381036
"partial-tox.json",
10391037
"poetry.json",
1040-
"pyproject-tools.json",
10411038
"ruff.json",
10421039
"tombi.json",
10431040
"uv.json",
@@ -1090,53 +1087,6 @@
10901087
"externalSchema": ["base.json"]
10911088
},
10921089
"pyproject.json": {
1093-
"externalSchema": [
1094-
"hatch.json",
1095-
"maturin.json",
1096-
"partial-black.json",
1097-
"partial-cibuildwheel.json",
1098-
"partial-mypy.json",
1099-
"partial-pdm.json",
1100-
"partial-pdm-dockerize.json",
1101-
"partial-poe.json",
1102-
"partial-poetry.json",
1103-
"partial-pyright.json",
1104-
"partial-repo-review.json",
1105-
"partial-scikit-build.json",
1106-
"partial-setuptools.json",
1107-
"partial-setuptools-scm.json",
1108-
"partial-taskipy.json",
1109-
"partial-tox.json",
1110-
"poetry.json",
1111-
"pyproject-tools.json",
1112-
"ruff.json",
1113-
"tombi.json",
1114-
"uv.json",
1115-
"base.json"
1116-
],
1117-
"unknownFormat": [
1118-
"uint16",
1119-
"uint8",
1120-
"uint",
1121-
"int",
1122-
"python-module-name",
1123-
"pep508-identifier",
1124-
"python-qualified-identifier",
1125-
"python-identifier",
1126-
"pep561-stub-name"
1127-
],
1128-
"unknownKeywords": [
1129-
"markdownDescription",
1130-
"x-taplo",
1131-
"x-taplo-info",
1132-
"x-tombi-toml-version",
1133-
"x-tombi-table-keys-order",
1134-
"x-tombi-array-values-order",
1135-
"x-intellij-html-description",
1136-
"x-intellij-language-injection"
1137-
]
1138-
},
1139-
"pyproject-tools.json": {
11401090
"externalSchema": [
11411091
"hatch.json",
11421092
"maturin.json",

src/schemas/json/pep-723.json

Lines changed: 85 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,91 @@
3434
"examples": [["attrs", "requests ~= 2.28"]]
3535
},
3636
"tool": {
37-
"$ref": "https://json.schemastore.org/pyproject-tools.json"
37+
"type": "object",
38+
"additionalProperties": {
39+
"type": "object"
40+
},
41+
"title": "Tool-specific configuration",
42+
"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.",
43+
"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.",
44+
"x-intellij-html-description": "<p>Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within <code>[tool]</code>. Generally a project can use the subtable <code>tool.$NAME</code> if, and only if, they own the entry for <code>$NAME</code> in the Cheeseshop/PyPI.</p>",
45+
"x-taplo": {
46+
"links": {
47+
"key": "https://packaging.python.org/en/latest/specifications/pyproject-toml/#arbitrary-tool-configuration-the-tool-table"
48+
}
49+
},
50+
"x-tombi-table-keys-order": "ascending",
51+
"properties": {
52+
"black": {
53+
"$ref": "https://json.schemastore.org/partial-black.json"
54+
},
55+
"cibuildwheel": {
56+
"$ref": "https://json.schemastore.org/partial-cibuildwheel.json"
57+
},
58+
"mypy": {
59+
"$ref": "https://json.schemastore.org/partial-mypy.json"
60+
},
61+
"ruff": {
62+
"$ref": "https://json.schemastore.org/ruff.json"
63+
},
64+
"hatch": {
65+
"$ref": "https://json.schemastore.org/hatch.json"
66+
},
67+
"maturin": {
68+
"$ref": "https://json.schemastore.org/maturin.json",
69+
"title": "Maturin",
70+
"description": "Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages"
71+
},
72+
"scikit-build": {
73+
"$ref": "https://json.schemastore.org/partial-scikit-build.json"
74+
},
75+
"setuptools": {
76+
"$ref": "https://json.schemastore.org/partial-setuptools.json"
77+
},
78+
"setuptools_scm": {
79+
"$ref": "https://json.schemastore.org/partial-setuptools-scm.json"
80+
},
81+
"poe": {
82+
"$ref": "https://json.schemastore.org/partial-poe.json"
83+
},
84+
"poetry": {
85+
"$ref": "https://json.schemastore.org/partial-poetry.json"
86+
},
87+
"pdm": {
88+
"$ref": "https://json.schemastore.org/partial-pdm.json"
89+
},
90+
"pyright": {
91+
"$ref": "https://json.schemastore.org/partial-pyright.json"
92+
},
93+
"repo-review": {
94+
"$ref": "https://json.schemastore.org/partial-repo-review.json"
95+
},
96+
"taskipy": {
97+
"$ref": "https://json.schemastore.org/partial-taskipy.json",
98+
"title": "Task Runner",
99+
"description": "The complementary task runner for python."
100+
},
101+
"tombi": {
102+
"$ref": "https://json.schemastore.org/tombi.json",
103+
"title": "TOML Toolkit",
104+
"description": "Tombi (鳶) is a toolkit for TOML; providing a formatter/linter and language server"
105+
},
106+
"tox": {
107+
"$ref": "https://json.schemastore.org/partial-tox.json"
108+
},
109+
"uv": {
110+
"$ref": "https://json.schemastore.org/uv.json"
111+
}
112+
},
113+
"examples": [
114+
{
115+
"tool": {
116+
"isort": {
117+
"profile": "black"
118+
}
119+
}
120+
}
121+
]
38122
}
39123
}
40124
}

src/schemas/json/pyproject-tools.json

Lines changed: 0 additions & 89 deletions
This file was deleted.

src/schemas/json/pyproject.json

Lines changed: 85 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -853,7 +853,91 @@
853853
"$ref": "#/definitions/BuildSystem"
854854
},
855855
"tool": {
856-
"$ref": "https://json.schemastore.org/pyproject-tools.json"
856+
"type": "object",
857+
"additionalProperties": {
858+
"type": "object"
859+
},
860+
"title": "Tool-specific configuration",
861+
"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.",
862+
"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.",
863+
"x-intellij-html-description": "<p>Every tool that is used by the project can have users specify configuration data as long as they use a sub-table within <code>[tool]</code>. Generally a project can use the subtable <code>tool.$NAME</code> if, and only if, they own the entry for <code>$NAME</code> in the Cheeseshop/PyPI.</p>",
864+
"x-taplo": {
865+
"links": {
866+
"key": "https://packaging.python.org/en/latest/specifications/pyproject-toml/#arbitrary-tool-configuration-the-tool-table"
867+
}
868+
},
869+
"x-tombi-table-keys-order": "ascending",
870+
"properties": {
871+
"black": {
872+
"$ref": "https://json.schemastore.org/partial-black.json"
873+
},
874+
"cibuildwheel": {
875+
"$ref": "https://json.schemastore.org/partial-cibuildwheel.json"
876+
},
877+
"mypy": {
878+
"$ref": "https://json.schemastore.org/partial-mypy.json"
879+
},
880+
"ruff": {
881+
"$ref": "https://json.schemastore.org/ruff.json"
882+
},
883+
"hatch": {
884+
"$ref": "https://json.schemastore.org/hatch.json"
885+
},
886+
"maturin": {
887+
"$ref": "https://json.schemastore.org/maturin.json",
888+
"title": "Maturin",
889+
"description": "Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages"
890+
},
891+
"scikit-build": {
892+
"$ref": "https://json.schemastore.org/partial-scikit-build.json"
893+
},
894+
"setuptools": {
895+
"$ref": "https://json.schemastore.org/partial-setuptools.json"
896+
},
897+
"setuptools_scm": {
898+
"$ref": "https://json.schemastore.org/partial-setuptools-scm.json"
899+
},
900+
"poe": {
901+
"$ref": "https://json.schemastore.org/partial-poe.json"
902+
},
903+
"poetry": {
904+
"$ref": "https://json.schemastore.org/partial-poetry.json"
905+
},
906+
"pdm": {
907+
"$ref": "https://json.schemastore.org/partial-pdm.json"
908+
},
909+
"pyright": {
910+
"$ref": "https://json.schemastore.org/partial-pyright.json"
911+
},
912+
"repo-review": {
913+
"$ref": "https://json.schemastore.org/partial-repo-review.json"
914+
},
915+
"taskipy": {
916+
"$ref": "https://json.schemastore.org/partial-taskipy.json",
917+
"title": "Task Runner",
918+
"description": "The complementary task runner for python."
919+
},
920+
"tombi": {
921+
"$ref": "https://json.schemastore.org/tombi.json",
922+
"title": "TOML Toolkit",
923+
"description": "Tombi (鳶) is a toolkit for TOML; providing a formatter/linter and language server"
924+
},
925+
"tox": {
926+
"$ref": "https://json.schemastore.org/partial-tox.json"
927+
},
928+
"uv": {
929+
"$ref": "https://json.schemastore.org/uv.json"
930+
}
931+
},
932+
"examples": [
933+
{
934+
"tool": {
935+
"isort": {
936+
"profile": "black"
937+
}
938+
}
939+
}
940+
]
857941
}
858942
},
859943
"title": "JSON schema for Python project metadata and configuration",

src/test/pyproject-tools/pyproject-tools.toml

Lines changed: 0 additions & 5 deletions
This file was deleted.

0 commit comments

Comments
 (0)