@@ -260,7 +260,8 @@ def _fail_multiple_default_toolchains(first, second):
260
260
def _process_tag_classes (mod ):
261
261
arg_structs = []
262
262
seen_versions = {}
263
- available_versions = TOOL_VERSIONS
263
+ available_versions = {}
264
+ available_versions .update (TOOL_VERSIONS )
264
265
base_url = DEFAULT_RELEASE_BASE_URL
265
266
266
267
for tag in mod .tags .toolchain :
@@ -270,7 +271,7 @@ def _process_tag_classes(mod):
270
271
if mod .is_root :
271
272
for tag in mod .tags .version_override :
272
273
sha256 = {}
273
- for p , sha in tag .sha256 .items ():
274
+ for p , sha in tag .sha256s .items ():
274
275
if p not in PLATFORMS :
275
276
fail ("The platform must be one of {allowed} but got '{got}'" .format (
276
277
allowed = sorted (PLATFORMS ),
@@ -291,10 +292,10 @@ def _process_tag_classes(mod):
291
292
if tag .available_python_versions :
292
293
all_known_versions = sorted (available_versions )
293
294
available_versions = {
294
- v : available_versions . get ( v , fail ("unknown version {} , known versions: {}" .format (
295
+ v : available_versions [ v ] if v in available_versions else fail ("unknown version '{}' , known versions are : {}" .format (
295
296
v ,
296
297
all_known_versions ,
297
- )))
298
+ ))
298
299
for v in tag .available_python_versions
299
300
}
300
301
@@ -433,7 +434,7 @@ _version_override = tag_class(
433
434
doc = """Tag class used to override single python version settings.""" ,
434
435
attrs = {
435
436
"sha256s" : attr .string_dict (
436
- mandatory = True ,
437
+ mandatory = False ,
437
438
doc = "The python platform to sha256 dict. The platform key must be present in the PLATFORMS dict." ,
438
439
),
439
440
"strip_prefix" : attr .string (
0 commit comments