v1.0.1 is a minor release with mostly under the hood changes to improve reliability. I wanted to get those changes out as soon as possible before starting to work on other changes.
Impactful changes and mitigations
- flat downloads layout is the new default. If you've previously downloaded installers without using
-downloads-layout flat
option you need to relayout your downloads withrelayout-downloads -from sharded -to flat
- Local downloads filenames are tracked in a new way. If using vangogh CLI you need to run
migrate-data
once. If using web service (with or without docker) - you don't need to do anything. Data migration will happen automatically every time you start a web server (withserve
command) and in most cases will be a no-op (since data is not expected to change often).
User-visible changes:
- Downloads now have validation status per variant (operating system, version, installer/DLC). Previously you'd see validation status per product or per individual file, but not per variant. This is helpful because GOG is recently missing checksum files for macOS, Linux versions and you would be able to see Windows version as validated in that case (vs only seeing all product as missing checksum)
- Removed the option to generate checksum. Current solution was very error prone, especially for macOS version where data files have stable names (e.g. GameData_1_aa), but can be updated messing up checksums and leading to incorrect Corrupted status
- Steam News section will now display the date of last community update. Will be green if the update was in the last 30 days and gray if older
- Section focus pulse animation has been tweaked to improve visibility in light and dark themes
- Sync operation should be slightly faster as now we only update additional data sources for GAME type products (and not DLC, PACK)
- Downloads operations will now display a more clear message when some of the provided ids are DLC, PACK type (and as such won't contain downloads)
Under the hood changes
- Flat downloads layout (https://github.com/arelate/vangogh?tab=readme-ov-file#downloads-layouts) is the new default value. I'm confident this is a better default long term and don't expect this will change in the future. For folks with larger collections (> 1000 products) sharded might still be a better option. Please follow the instructions in the README to set it.
- vangogh will now use a special User-Agent "vangogh {version}" when communicating with GOG.com endpoints. This should make it easier for GOG to observe and distinguish vangogh traffic from other types of traffic (e.g. AI bots). Currently this is limited to GOG.com requests, as some other sources refuse to respond to non-browser UAs.
- A
migrate-data
command has been added to help update local data when schema changes. This version introduces the first schema change - a newmanual-url-filename
property that is a variation oflocal-manual-url
. Migration will translate from the latter to the former property as needed. - Resolving local download paths is now centralized in a set of new helper functions and all callosities have been updated to use those. It has passed my testing, but given the amount of change some regressions are possible - please file issues if anything is not working correctly.