windows
zip: https://github.com/hydrusnetwork/hydrus/releases/download/v338/Hydrus.Network.338.-.Windows.-.Extract.only.zip
exe: https://github.com/hydrusnetwork/hydrus/releases/download/v338/Hydrus.Network.338.-.Windows.-.Installer.exe
os x
app: https://github.com/hydrusnetwork/hydrus/releases/download/v338/Hydrus.Network.338.-.OS.X.-.App.dmg
linux
tar.gz: https://github.com/hydrusnetwork/hydrus/releases/download/v338/Hydrus.Network.338.-.Linux.-.Executable.tar.gz
source
tar.gz: https://github.com/hydrusnetwork/hydrus/archive/v338.tar.gz
The recent v335 was an important update. If you are updating from v334 or earlier, please go read that release post for your special one-time update instructions and update to v335 before you try this week. Once you have updated to v335, the process for updating to anything newer is back to normal.
I had a great week. There's some bug fixes and neat new tag stuff.
tags
After talking to some users this week, I decided to knuckle down and improve autocomplete tag input. This has been in the works for a long time, but I have had trouble just putting the time in.
So, the autocompletes for both file searching (on pages) and tag management (on manage tags dialog) now work asynchronously! They search in the background, letting you continue typing smoothly without hanging you up. Large and laggy searches are cancelled mid-job as needed. Hitting enter before results come in is much smoother and more reliable, so if you just want to add simple tags like 'green eyes' by typing them in and hitting enter, it is much easier and less janky.
I am very happy with this change. Improving the core experience is something I want to do more. That said, I did this in a slightly rough way (I am wrestling with some terrible ancient code here), so there may be some bugs for certain workflows. If you discover you are getting false positives when typing fast or any other strange behaviour, let me know. This new system may want some different fetch timing settings, as well. All feedback welcome, basically.
Also, any 'selection tags' taglist on a regular page now lets you right-click->select all files with (selected tags)! If you select multiple tags for your right-click, you can either select the files with all the tags (AND), or those with any of the tags (OR). This is pretty neat, so give it a go!
misc
Pages now have a 'sort by approx bitrate' in their sort dropdown. This does a very basic (filesize / duration) calculation (putting durationless files on the smaller end) and lets you prioritise bloated gifs and other short, high-filesize (i.e. easy and useful to filter) vids.
Gelbooru changed up how some of their URLs work, so they suddenly started giving 403s for the hydrus default downloader. This release folds in a new parser that works again and a couple of new downloaders for gelbooru user favourites and pools.
I fixed an issue that meant preview view duration was ofter being counted in the new file viewing statistics system even while previews were in hidden pages.
full list
- after talking with some users, put a bit of time into tag autocomplete wolkflow. both read (search pages) and write (manage tags) autocomplete inputs now operate ~asynchronously~, with the tag fetch working on a separate thread. tag jobs can also now cancel at certain checkpoints in the tag search process if overwritten by a new request. therefore, a variety of tag lookup scenarios _should_ be less painful. this change was executed in a semi-inelegant way, so please report if you encounter bugs from fast typing etc…
- I also improved some of the "I hit enter before results were in" code as a result of this. not sure I have it totally nailed, so please give feedback on errors here
- wildcard search tags now have an explicit '(wildcard search)' after their label
- taglists that have an attached page of media (basically the 'selection tags' box and the 'active search predicates' up top) now have a right-click menu entry to 'select files with (all these tags)' and, if more than one tag is selected, 'select files with (any of these tags)'! This is pretty neat in action, so give it a go!
- added a 'sort by approx bitrate' file sorting option that does a basic filesize/duration so you can filter out dense gifs and other short-but-big vids a bit easier. anything without a duration is shoved to the 'smallest' side
- some of the file sort options now default to their respective 'biggest' first, see how you like it
- folded in updated gelbooru file page parser (fixing the 403 errors that just appeared) and added searches for gelbooru user favourites and pools
- if a gallery or watchable url ends up in the file processing queue (and hence fails), it now says the believed-to-be url class name in the error, which should help some false positive url class matching debugging
- fixed a focused-file selection issue that meant preview viewtime was frequently counting in file viewing statistics even while a page was not currently in view
- fixed the local booru review service panel, which wasn't fully deleting shares when the button was clicked
- wrote a service object and basic server skeleton for the client api (basically refactoring the existing local booru code). client api now appears in manage and review services and can boot and present the normal hydrus browser welcome page at '/'
- the client api and the local booru now have an 'allow non-local connections' checkbox! defaulting to off and on respectively
- updated a wx-thread call function to more safely and universally deal with instances where the responsible window died before the call could be made
- removed some old experimental crypto code that isn't used any more–pycryptodome is no longer needed to run the program from source
- improved some misc client service code
- deleted some old unused code
- misc cleanup
- updated to ffmpeg 4.1 on windows release
- updated to sqlite 3.26 on windows release
- updated to wxpython 4.0.4 on all platforms
next week
The Client API continued to go better than expected this week. If you explore manage/review services, you'll see the stubs of the new 'client api' service and can even boot a skeleton server. I'll work on a bit more ui and access code this week, and with a bit of luck, I'll actually have it doing something fun for v339.