4242 "pca10059" : BIN_UF2
4343}
4444
45+ aliases_by_board = {
46+ "circuitplayground_express" : ["circuitplayground_express_4h" , "circuitplayground_express_digikey_pycon2019" ],
47+ "gemma_m0" : ["gemma_m0_pycon2018" ],
48+ "pewpew10" : ["pewpew13" ]
49+ }
50+
4551def get_languages ():
4652 languages = []
4753 for f in os .scandir ("../locale" ):
@@ -59,7 +65,17 @@ def get_board_mapping():
5965 board_id = board_path .name
6066 extensions = extension_by_port [port ]
6167 extensions = extension_by_board .get (board_path .name , extensions )
62- boards [board_id ] = {"port" : port , "extensions" : extensions , "download_count" : 0 }
68+ aliases = aliases_by_board .get (board_path .name , [])
69+ boards [board_id ] = {"port" : port ,
70+ "extensions" : extensions ,
71+ "download_count" : 0 ,
72+ "aliases" : aliases }
73+ for alias in aliases :
74+ boards [alias ] = {"port" : port ,
75+ "extensions" : extensions ,
76+ "download_count" : 0 ,
77+ "alias" : True ,
78+ "aliases" : []}
6379 return boards
6480
6581def get_version_info ():
@@ -235,23 +251,25 @@ def generate_download_info():
235251 board_id = board_path .name
236252 board_info = board_mapping [board_id ]
237253
238- if board_id not in current_info :
239- changes ["new_boards" ].append (board_id )
240- current_info [board_id ] = {"downloads" : 0 ,
241- "versions" : []}
242-
243- new_version = {
244- "stable" : new_stable ,
245- "version" : new_tag ,
246- "files" : {}
247- }
248- for language in languages :
249- files = []
250- new_version ["files" ][language ] = files
251- for extension in board_info ["extensions" ]:
252- files .append ("https://github.com/adafruit/circuitpython/releases/download/{tag}/adafruit-circuitpython-{board}-{language}-{tag}.{extension}" .format (tag = new_tag , board = board_id , language = language , extension = extension ))
253- current_info [board_id ]["downloads" ] = board_info ["download_count" ]
254- current_info [board_id ]["versions" ].append (new_version )
254+ for alias in [board_id ] + board_info ["aliases" ]:
255+ alias_info = board_mapping [alias ]
256+ if alias not in current_info :
257+ changes ["new_boards" ].append (alias )
258+ current_info [alias ] = {"downloads" : 0 ,
259+ "versions" : []}
260+
261+ new_version = {
262+ "stable" : new_stable ,
263+ "version" : new_tag ,
264+ "files" : {}
265+ }
266+ for language in languages :
267+ files = []
268+ new_version ["files" ][language ] = files
269+ for extension in board_info ["extensions" ]:
270+ files .append ("https://github.com/adafruit/circuitpython/releases/download/{tag}/adafruit-circuitpython-{alias}-{language}-{tag}.{extension}" .format (tag = new_tag , alias = alias , language = language , extension = extension ))
271+ current_info [alias ]["downloads" ] = alias_info ["download_count" ]
272+ current_info [alias ]["versions" ].append (new_version )
255273
256274 changes ["new_languages" ] = set (languages ) - previous_languages
257275
0 commit comments