This release continues to focus on library management improvements and features, robustifying the backend code and making needed changes for future implementations. There are also bug fixes in the UI, library management code and in Tinfoil displaying the titles incorrectly.
Library Organizer
You can now configure Ownfoil to automatically organize your library: all identified files will be renamed and organized according to the settings. The templates can be configured from the Settings page in the Web UI:
Some additional features of the organizer to tidy up your library:
- automatically delete older updates
- delete empty folders after library organization
Console keys management
As requested by users, the console keys revisions are now individually verified by Ownfoil and available to review in the Settings page. You can now see if you are missing newer revisions, or if one key happens to be invalid:
When the specific key required to open a file is missing, Ownfoil now tracks the key in the file's identification status.
Scheduler improvements
The scheduler has been improved to allow the configuration of periodic jobs in the UI, as well as enabling/disabling them:
This now makes it very easy to add periodic tasks in the backend, configure them using the UI.
Performance improvements
By only opening the sections containing metadatas, the file identification is now 2x to 10x times faster.
In this release the docker image has been updated to use Python 3.14, which greatly improves the speed of execution of Ownfoil.
What's Changed
New Features
- Add automated library management by @a1ex4 in #229
- Console keys management: add invalid/missing revisions in UI by @a1ex4 in #280
- Improve scheduler to support configurable period and enabling/disabling jobs from settings by @a1ex4 in #281
- Add Ownfoil logo by @a1ex4 in #283
Fixes and Improvements
- Speed up file identification by only reading metadata sections by @a1ex4 in #232
- fix: special characters in password validation by @Kratemis in #236
- Fix filter and searching by @Sab44 in #241
- Fix tinfoil games by @a1ex4 in #247
- Organizer: Prevent forbidden characters in filenames by @garlik82 in #256
- Fix: Add "owned" flag to DLCs and fix false-positive "Up to date" pills by @HarleyBartles in #254
- Fix encoding when reading TitleDB files by @a1ex4 in #282
Dependencies
- build(deps): bump actions/setup-python from 5 to 6 by @dependabot[bot] in #227
- build(deps): bump actions/stale from 9 to 10 by @dependabot[bot] in #228
- Migrate from NSTools to nsz by @a1ex4 in #231
- build(deps): bump zstandard from 0.24.0 to 0.25.0 by @dependabot[bot] in #238
- build(deps): bump python from 3.11-alpine to 3.13-alpine by @dependabot[bot] in #130
- build(deps): bump pyyaml from 6.0.2 to 6.0.3 by @dependabot[bot] in #245
- build(deps): bump actions/checkout from 5 to 6 by @dependabot[bot] in #267
- build(deps): bump actions/upload-artifact from 4 to 6 by @dependabot[bot] in #269
- build(deps): bump werkzeug from 3.1.3 to 3.1.5 by @dependabot[bot] in #273
- build(deps): bump python from 3.13-alpine to 3.14-alpine by @dependabot[bot] in #249
Issues fixed:
- Display the console keys revision in the UI and detect when new revision is needed for file indentification #205
- In tinfoil no game title is present #239
- Error preventing the rest of the folder scanning #246
- Forbidden characters with organizer. #251
- Feature suggestion: Add option to set interval/disablement for automatic library scan #270
- Error when launching - UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 58879 #277
New Contributors
- @Kratemis made their first contribution in #236
- @Sab44 made their first contribution in #241
- @garlik82 made their first contribution in #256
Full Changelog: 2.1.3...2.2.0