11{
2- "$schema" : " https://json-schema.org/draft/2020-12/schema" ,
3- "$id" : " https://wheelnext.dev/variants.json" ,
4- "title" : " {name}-{version}-variants.json" ,
5- "description" : " Combined index metadata for wheel variants" ,
6- "type" : " object" ,
7- "properties" : {
8- "default-priorities" : {
9- "description" : " Default provider priorities" ,
10- "type" : " object" ,
11- "properties" : {
12- "namespace" : {
13- "description" : " Default namespace priorities" ,
14- "type" : " array" ,
15- "items" : {
16- "type" : " string" ,
17- "pattern" : " ^[a-z0-9_]+$"
18- },
19- "minItems" : 1 ,
20- "uniqueItems" : true
21- },
22- "feature" : {
23- "description" : " Default feature priorities (by namespace)" ,
24- "type" : " object" ,
25- "patternProperties" : {
26- "^[a-z0-9_]+$" : {
27- "description" : " Preferred features" ,
28- "type" : " array" ,
29- "items" : {
30- "type" : " string" ,
31- "pattern" : " ^[a-z0-9_]+$"
32- },
33- "minItems" : 0 ,
34- "uniqueItems" : true
35- }
36- },
37- "additionalProperties" : false ,
38- "uniqueItems" : true
39- },
40- "property" : {
41- "description" : " Default property priorities (by namespace)" ,
42- "type" : " object" ,
43- "patternProperties" : {
44- "^[a-z0-9_]+$" : {
45- "description" : " Default property priorities (by feature) name" ,
46- "type" : " object" ,
47- "patternProperties" : {
48- "^[a-z0-9_]+$" : {
49- "type" : " array" ,
50- "items" : {
51- "type" : " string" ,
52- "pattern" : " ^[a-z0-9_.]+$"
53- },
54- "minItems" : 0 ,
55- "uniqueItems" : true
56- }
57- },
58- "additionalProperties" : false ,
59- "uniqueItems" : true
60- }
61- },
62- "additionalProperties" : false ,
63- "uniqueItems" : true
64- }
65- },
66- "additionalProperties" : false ,
67- "uniqueItems" : true ,
68- "required" : [
69- " namespace"
70- ]
2+ "$schema" : " https://json-schema.org/draft/2020-12/schema" ,
3+ "$id" : " https://wheelnext.dev/variants.json" ,
4+ "title" : " {name}-{version}-variants.json" ,
5+ "description" : " Combined index metadata for wheel variants" ,
6+ "type" : " object" ,
7+ "properties" : {
8+ "default-priorities" : {
9+ "description" : " Default provider priorities" ,
10+ "type" : " object" ,
11+ "properties" : {
12+ "namespace" : {
13+ "description" : " Default namespace priorities" ,
14+ "type" : " array" ,
15+ "items" : {
16+ "type" : " string" ,
17+ "pattern" : " ^[a-z0-9_]+$"
18+ },
19+ "minItems" : 1 ,
20+ "uniqueItems" : true
7121 },
72- "providers" : {
73- "description" : " Mapping of namespaces to provider information" ,
74- "type" : " object" ,
75- "patternProperties" : {
76- "^[A-Za-z0-9_]+$" : {
77- "type" : " object" ,
78- "description" : " Provider information" ,
79- "properties" : {
80- "plugin-api" : {
81- "description" : " Object reference to plugin class" ,
82- "type" : " string" ,
83- "pattern" : " ^([a-zA-Z0-9._]+ *: *[a-zA-Z0-9._]+)|([a-zA-Z0-9._]+)$"
84- },
85- "enable-if" : {
86- "description" : " Environment marker specifying when to enable the plugin" ,
87- "type" : " string" ,
88- "minLength" : 1
89- },
90- "optional" : {
91- "description" : " Whether the provider is optional" ,
92- "type" : " boolean"
93- },
94- "plugin-use" : {
95- "description" : " Whether a plugin is used: not at all, at build time or both at build and install time" ,
96- "type" : " string" ,
97- "enum" : [
98- " none" ,
99- " build" ,
100- " all"
101- ]
102- },
103- "requires" : {
104- "description" : " Dependency specifiers for how to install the plugin" ,
105- "type" : " array" ,
106- "items" : {
107- "type" : " string" ,
108- "minLength" : 1
109- },
110- "minItems" : 0 ,
111- "uniqueItems" : true
112- }
113- },
114- "additionalProperties" : false ,
115- "uniqueItems" : true ,
116- "required" : [
117- " requires"
118- ]
119- }
120- },
121- "additionalProperties" : false ,
122- "uniqueItems" : true
22+ "feature" : {
23+ "description" : " Default feature priorities (by namespace)" ,
24+ "type" : " object" ,
25+ "patternProperties" : {
26+ "^[a-z0-9_]+$" : {
27+ "description" : " Preferred features" ,
28+ "type" : " array" ,
29+ "items" : {
30+ "type" : " string" ,
31+ "pattern" : " ^[a-z0-9_]+$"
32+ },
33+ "minItems" : 0 ,
34+ "uniqueItems" : true
35+ }
36+ },
37+ "additionalProperties" : false ,
38+ "uniqueItems" : true
12339 },
124- "variants" : {
125- "description" : " Mapping of variant labels to properties" ,
126- "type" : " object" ,
127- "patternProperties" : {
128- "^[a-z0-9_.]{1,16}$" : {
129- "type" : " object" ,
130- "description" : " Mapping of namespaces in a variant" ,
131- "patternProperties" : {
132- "^[a-z0-9_.]+$" : {
133- "patternProperties" : {
134- "^[a-z0-9_.]+$" : {
135- "description" : " list of possible values for this variant feature." ,
136- "type" : " array" ,
137- "items" : {
138- "type" : " string" ,
139- "pattern" : " ^[a-z0-9_.]+$"
140- },
141- "minItems" : 1 ,
142- "uniqueItems" : true
143- }
144- },
145- "uniqueItems" : true ,
146- "additionalProperties" : false
147- }
148- },
149- "uniqueItems" : true ,
150- "additionalProperties" : false
40+ "property" : {
41+ "description" : " Default property priorities (by namespace)" ,
42+ "type" : " object" ,
43+ "patternProperties" : {
44+ "^[a-z0-9_]+$" : {
45+ "description" : " Default property priorities (by feature) name" ,
46+ "type" : " object" ,
47+ "patternProperties" : {
48+ "^[a-z0-9_]+$" : {
49+ "type" : " array" ,
50+ "items" : {
51+ "type" : " string" ,
52+ "pattern" : " ^[a-z0-9_.]+$"
53+ },
54+ "minItems" : 0 ,
55+ "uniqueItems" : true
15156 }
57+ },
58+ "additionalProperties" : false ,
59+ "uniqueItems" : true
60+ }
61+ },
62+ "additionalProperties" : false ,
63+ "uniqueItems" : true
64+ }
65+ },
66+ "additionalProperties" : false ,
67+ "uniqueItems" : true ,
68+ "required" : [
69+ " namespace"
70+ ]
71+ },
72+ "providers" : {
73+ "description" : " Mapping of namespaces to provider information" ,
74+ "type" : " object" ,
75+ "patternProperties" : {
76+ "^[A-Za-z0-9_]+$" : {
77+ "type" : " object" ,
78+ "description" : " Provider information" ,
79+ "properties" : {
80+ "plugin-api" : {
81+ "description" : " Object reference to plugin class" ,
82+ "type" : " string" ,
83+ "pattern" : " ^([a-zA-Z0-9._]+ *: *[a-zA-Z0-9._]+)|([a-zA-Z0-9._]+)$"
15284 },
153- "additionalProperties" : false ,
154- "uniqueItems" : true
85+ "enable-if" : {
86+ "description" : " Environment marker specifying when to enable the plugin" ,
87+ "type" : " string" ,
88+ "minLength" : 1
89+ },
90+ "optional" : {
91+ "description" : " Whether the provider is optional" ,
92+ "type" : " boolean"
93+ },
94+ "plugin-use" : {
95+ "description" : " Whether a plugin is used: not at all, at build time or both at build and install time" ,
96+ "type" : " string" ,
97+ "enum" : [
98+ " none" ,
99+ " build" ,
100+ " all"
101+ ]
102+ },
103+ "requires" : {
104+ "description" : " Dependency specifiers for how to install the plugin" ,
105+ "type" : " array" ,
106+ "items" : {
107+ "type" : " string" ,
108+ "minLength" : 1
109+ },
110+ "minItems" : 0 ,
111+ "uniqueItems" : true
112+ }
113+ },
114+ "additionalProperties" : false ,
115+ "uniqueItems" : true ,
116+ "required" : [
117+ " requires"
118+ ]
155119 }
120+ },
121+ "additionalProperties" : false ,
122+ "uniqueItems" : true
156123 },
157- "required" : [
158- " default-priorities" ,
159- " providers" ,
160- " variants"
161- ],
162- "uniqueItems" : true
163- }
124+ "variants" : {
125+ "description" : " Mapping of variant labels to properties" ,
126+ "type" : " object" ,
127+ "patternProperties" : {
128+ "^[a-z0-9_.]{1,16}$" : {
129+ "type" : " object" ,
130+ "description" : " Mapping of namespaces in a variant" ,
131+ "patternProperties" : {
132+ "^[a-z0-9_.]+$" : {
133+ "patternProperties" : {
134+ "^[a-z0-9_.]+$" : {
135+ "description" : " list of possible values for this variant feature." ,
136+ "type" : " array" ,
137+ "items" : {
138+ "type" : " string" ,
139+ "pattern" : " ^[a-z0-9_.]+$"
140+ },
141+ "minItems" : 1 ,
142+ "uniqueItems" : true
143+ }
144+ },
145+ "uniqueItems" : true ,
146+ "additionalProperties" : false
147+ }
148+ },
149+ "uniqueItems" : true ,
150+ "additionalProperties" : false
151+ }
152+ },
153+ "additionalProperties" : false ,
154+ "uniqueItems" : true
155+ }
156+ },
157+ "required" : [
158+ " default-priorities" ,
159+ " providers" ,
160+ " variants"
161+ ],
162+ "uniqueItems" : true
163+ }
0 commit comments