unexpectedpanda / retool

Retool: a better filter tool for Redump and No-Intro DAT files.
BSD 3-Clause "New" or "Revised" License
343 stars 21 forks source link

Crash while parsing IBM - PC and Compatibles (Digital) (itch.io) (20220331-104836).dat #186

Closed Freeben666 closed 2 years ago

Freeben666 commented 2 years ago

Describe the bug Problem parsing a DAT : IBM - PC and Compatibles (Digital) (itch.io) (20220331-104836).dat

IBM - PC and Compatibles (Digital) (itch.io) (20220331-104836).dat.zip

To reproduce Try having retool work on the DAT, it crashes:

Processing file 14/21

* Reading dat file: "D:\Emulation\Tools\Retool\DATs\IBM - PC and Compatibles
  (Digital) (itch.io) (20220331-104836).dat"
* Validating dat file... file is a Logiqx dat file.
* Converting dat file to a searchable format... done.
* Checking if the input dat is numbered... this isn't a numbered dat.
* Gathering stats... done.

|  DAT DETAILS
|  Description: IBM - PC and Compatibles (Digital) (itch.io)
|  Author: Fake Shemp, Flashfire42, Hiccup, norkmetnoil577, UnlockerPT
|  URL: http://www.no-intro.org
|  Version: 20220331-104836

Traceback (most recent call last):nown [Finishing up...]
  File "retool-gui.py", line 1020, in <module>
  File "retool-gui.py", line 622, in main
  File "retool.py", line 276, in main
  File "modules\xml.py", line 488, in dat_to_dict
  File "modules\parentselection.py", line 35, in choose_parent
  File "modules\parentselection.py", line 552, in choose_version_revision
ValueError: could not convert string to float: '1.2.3.0'
[20496] Failed to execute script 'retool-gui' due to unhandled exception!

Expected behavior Should not crash

Operating system

Retool edition

Retool version 1.06

Are you using custom global or system filters? If so, list them below

Global excludes:

Global includes:

System excludes:

System includes:

What other settings are you using? Regions : France>Europe>World>Unknown Languages: English, French

unexpectedpanda commented 2 years ago

I really need to put time aside for the new No-Intro DATs, but my focus has been elsewhere.

The error message is spot on, 1.2.3.0 isn't a float. Now that we've got multiple dots in versions, I'll need to implement a new version comparison.

unexpectedpanda commented 2 years ago

Retool 1.07 should now be able to handle this DAT. Thanks for the heads up!