- duplicate filter:
- duplicate action options no longer handle file deletion
- renamed 'not duplicates' across the program to 'not related' or 'false positive'
- 'alternates' and 'not related/false positive' duplicate actions no longer have duplicate action options. no merge content update now occurs on these actions
- the duplicate filter hover panel now splits 'this is better' decisions into two buttons--whether to delete or keep the worse file
- when selecting 'custom action' in the duplicate filter hover panel, it now asks if you would like to delete the current file, the other file, or both
- the 'duplicate_filter_this_is_better' shortcut action will be auto-updated to 'duplicate_filter_this_is_better_and_delete_other'. an alternate 'duplicate_filter_this_is_better_but_keep_both' is now also available
- the 'duplicate_filter_not_dupes' shortcut action will be auto-updated to 'duplicate_filter_false_positive'
- separated the buttons on the duplicate filter hover panel to more carefully split 'yes, files are duplicates' vs other decisions
- in prep for the duplicate db overhaul, refactored all PHash search code and Duplicate management code apart
- misc other prep work for duplicate db overhaul
- .
- file maintenance:
- wrote a new unified manager to handle various long-term file maintenance tasks like regenerating file metadata and thumbnails
- options to govern how this manager can run are now in options->maintenance and processing. you can enable it for idle and shutdown maintenance time and give it a throttle to limit how fast it will work on files, defaulting to 200 per day
- unified the previous db-level attempts at file maintenance to the new system, which supports async job queueing, and moving regen code up to the new manager, out of the db lock
- unified a variety of file and thumbnail regen code to work through the new simpler and saner path
- the right-click->regen thumbnail commands now run through the new manager and no longer need a modal popup. you can keep browsing while they work. they will also not hang the ui as the old system could on big jobs
- when right-click->regenning on more than 50 thumbnails, you now get a dialog asking if you want to do the job now or put it off later
- file maintenance tasks can now run in shutdown time! you will get previews of the jobs with file counts and status progress reports on the shutdown splash
- cleaned up some file extension renaming and dupe-removing code
- in future, I will move the current file integrity check to this new system and have some ui to prompt and set up other big jobs, like fixing various historical misparsing issues
- thumbnail resizing during thumbnail fade that resizes down is now more efficient
- moved the ClientFilesManager to ClientFiles.py
- .
- the rest:
- the 'manage upnp' dialog now moves the duplicated external ip display from the column up to the status text at the top. it fetches the ip after the initial mappings fetch is done. this ip is no longer affected by the external host override option
- cleaned up options->connection page and removed the now defunct external host override option
- the manage services page for the local booru now has optional override for scheme, host, and port for the 'copy external url' function
- fixed an issue with the recent 'collect by' session saving where a restored session that needed a collect was not sorted
- fixed an issue with collections being sorted by approx bitrate
- added a new checkbox to options->sort/collect to set it so the default sort updates every time you choose a new sort anywhere
- fixed an issue with 'remove trashed files from view', which was incorrectly removing on 'all local files' pages
- the 'all local files' file domain, which is frequently confusing to new users, is now no longer an option for new file pages or the autocomplete file domain if the user is not in advanced mode
- the client now searches for versions of urls both with and without a final '/' character when looking up file url import status at the db level and in import lists. system:known_url is unfortunately still an inefficient mess
- improved how the server code deals with some connectionLost errors
- cleaned up and unified some older dialog button code
- fixed a problem in manage tag siblings when petitioning existing pairs and then cancelling when asked for a reason
- fixed a miscount issue when uploading pending tags while many new tags are coming in. progress would sometimes be -754/1,234, ha ha
- db maintenance, repository sync, and file maintenance processing will all now wake on a force idle mode call
- deleted some old code
- misc fixes and cleanup
- some misc gui layout fixes