@@ -39,6 +39,7 @@ def clean_downloaded_firmwares(fw_folder: Path) -> None:
3939 writer .write (fw .to_dict ())
4040 log .info (f"Removed duplicate entries from firmware.jsonl in { fw_folder } " )
4141
42+
4243def find_downloaded_firmware (
4344 * ,
4445 board_id : str ,
@@ -53,6 +54,7 @@ def find_downloaded_firmware(
5354 selector = {}
5455 fw_folder = fw_folder or config .firmware_folder
5556 # Use the information in firmwares.jsonl to find the firmware file
57+ log .debug (f"{ trie } ] Looking for firmware for { board_id } { version } " )
5658 fw_list = downloaded_firmwares (fw_folder )
5759 if not fw_list :
5860 log .error ("No firmware files found. Please download the firmware first." )
@@ -102,12 +104,13 @@ def filter_downloaded_fwlist(
102104 fw_list = [fw for fw in fw_list if fw .preview ]
103105 else :
104106 # FWInfo version has no v1.2.3 prefix
105- _version = clean_version (version , drop_v = True )
106- fw_list = [fw for fw in fw_list if fw .version == _version ]
107-
107+ _version = { clean_version (version , drop_v = True ), clean_version ( version , drop_v = False )}
108+ fw_list = [fw for fw in fw_list if fw .version in _version ]
109+ log . trace ( f"Filtering firmware for { version } : { len ( fw_list ) } found." )
108110 # filter by port
109111 if port :
110112 fw_list = [fw for fw in fw_list if fw .port == port ]
113+ log .trace (f"Filtering firmware for { port } : { len (fw_list )} found." )
111114
112115 if board_id :
113116 if variants :
@@ -116,6 +119,7 @@ def filter_downloaded_fwlist(
116119 else :
117120 # the firmware variant should match exactly the board_id
118121 fw_list = [fw for fw in fw_list if fw .variant == board_id ]
122+ log .trace (f"Filtering firmware for { board_id } : { len (fw_list )} found." )
119123 if selector and port in selector :
120124 fw_list = [fw for fw in fw_list if fw .filename .endswith (selector [port ])]
121125 return fw_list
0 commit comments