windows
zip: https://github.com/hydrusnetwork/hydrus/releases/download/v220/Hydrus.Network.220.-.Windows.-.Extract.only.zip
exe: https://github.com/hydrusnetwork/hydrus/releases/download/v220/Hydrus.Network.220.-.Windows.-.Installer.exe
os x
app: https://github.com/hydrusnetwork/hydrus/releases/download/v220/Hydrus.Network.220.-.OS.X.-.App.dmg
tar.gz: https://github.com/hydrusnetwork/hydrus/releases/download/v220/Hydrus.Network.220.-.OS.X.-.Extract.only.tar.gz
linux
tar.gz: https://github.com/hydrusnetwork/hydrus/releases/download/v220/Hydrus.Network.220.-.Linux.-.Executable.tar.gz
source
tar.gz: https://github.com/hydrusnetwork/hydrus/archive/v220.tar.gz
I had a good week. I fixed bugs and made small improvements.
better file importing
I've written a simple and I think accurate test for whether a file is already in use by another process and hooked that into the import pipelines of the regular manual import dialog and the automatic import folder routine. From now on, these files will be excluded before any other parsing step–so it should now be safer to point an import folder at your browser download folder, for instance. Let me know if you discover any ways this test fails, either for a false positive or negative.
I also discovered a source of extreme slowdown during file import of large pngs with transparency, which cropped up due to a recent reshuffling in how some metadata was being generated. I've fixed the slow code, so even 4000x4000+ pngs should only take about a second.
double-click to edit
All listctrls (the spreadsheet-like controls that have multi-column lists of data) in the program that also have an edit button should now do that edit action on a double-click!
important quiet bug fixes
For a long time, I've told the gui part of the client to suppress certain core warnings. These bugs usually aren't a big deal, and most of the error stuff is just spam, but they can cause some flicker and small memory leaks and things like that, so this week I found the time to clean them up. As a result, Linux and OS X users should see less console error spam (which was leaking through despite the suppression) and everyone should have a very slightly less janky experience when the main client and its windows boot and exit.
But in the same way, some unusual combination of windows and events may trigger some new errors. They should pop up like any other caught exception, so let me know if you see any.
I've also cleaned up a variety of other weird problems and bad old timing code, including a couple of possible race conditions (potential program lock-ups) in the new file manager.
full list
- fixed collection selection show action lookup for the preview window
- files added through the normal import dialog or import folders will be not be fed into the import pipeline if it looks like they are already in use by another process
- (hence setting an import folder to a browser download destination should be more reliable)
- rewrote some critical phash generation code that was running extremely slow when importing large pngs with transparency
- all listctrls that have an edit button now also trigger the edit event on item activate (e.g. double-click/enter key on an item)
- added zoom in/out/switch to edit shortcut action dropdowns, can't promise it works everywhere
- 'stopping' a gallery page search will now correctly make sure the search queue is unpaused so it can move on to any subsequent search
- the way excess messages are added to the popup message manager is quicker, improving gui responsivity on message spam
- fixed a potential race condition when a file import occurs at the same time as client_files rebalancing
- fixed a potential race condition when a check_file_integrity db maintenance occurs at the same time as client_files rebalancing
- the client will no longer suppress some core debug stuff
- fixed an invalid event handler on canvas close bug
- fixed a long-time wx locale issue
- fixed a misc main gui parent assert issue
- fixed some invalid non-wx-thread calllater calls
- cleaned up some inartful showmessage calls
- cleaned up some datacache init code
- fixed some shutdown event handling
- generally improved and fixed in some cases how threads signal job status
- improved some thread-interaction timings
- improved how files and thumbnails are deleted
- file imports add their files to the client_files structure in a more sensible way
- misc fixes
- misc layout fixes
- misc cleanup
next week
I couldn't find time to work on suggested tags this week. I'm behind on messages as well. I'd like to catch up on both.