github hydrusnetwork/hydrus v412
Version 412

latest releases: v599, v598, v597-future-1...
4 years ago
  • client api:
  • added Hydrus Web, https://github.com/floogulinc/hydrus-web, to the Client API page. It allows you to access your client from any web browser
  • added Anime Boxes, https://www.animebox.es/, to the Client API page. This booru-browsing application can now browse hydrus!
  • the /add_urls/add_url command's 'service_names_to_tags' parameter now correctly acts like 'additional' tags, and is no longer filtered by any tag import options that may apply. that old name still works, but the more specific synonym 'service_names_to_additional_tags' is now supported and recommended (issue #456)
  • the /add_urls/add_url command now takes a 'filterable_tags' parameter, which will be merged with any parsed tags and will be filtered in the same per-service way according to the current tag import options.
  • the client api help is updated to talk about this, and the client api version is now 14
  • updated client api help to talk about http/https
  • .
  • the rest:
  • the 407->408 update step now opens a yes/no dialog before it happens to talk about the big amount of CPU and HDD work coming up. it offers the previous 'full' version that takes all the work, and a 'lite' version that applies no siblings and is much cheaper. if you have been waiting on a PTR-syncing HDD client, this should let you update in significantly less time. there is still some copy work in lite mode, but it should not be such a killer
  • the 'manage where tag siblings apply' dialog now has big red warning text talking about the current large CPU/HDD involved in very big changes
  • a bunch of file-location loading and searching across the program has the opportunity to run very slightly faster, particularly on large systems. update will take a few seconds to make these new indices
  • namespace and subtag tag searches and other cross-references now have the opportunity to run faster. update will take another couple of minutes to drop and remake new indices
  • gave tag and wildcard search a complete pass, fixing and bettering my recent optimisations, and compressing the core tag search optimisation code to one location. thank you for the feedback everyone, and sorry for the recent trouble as we have migrated to the new sibling and optimisation systems
  • gave untagged/has_tags/has_count searches a similar pass, mostly fixing up namespace filtering
  • gave the new siblings code a similar pass, ensuring a couple of fetches always run the fast way
  • gave url search and fetch code a similar pass, accounting better for domain cross-referencing and file cross-referencing
  • fixed a typo bug when approving/denying repository file and mapping petitions
  • fixed a bug when right-clicking a selection of multiple tags that shares a single subtag (e.g. 'samus aran' and 'character:samus aran')
  • thanks to some nice examples of unusual videos that were reported as 1,000fps, I improved my fallback ffmpeg metadata parsing to deal with weird situations more cleverly. some ~1,000fps files now reparse correctly to sensible values, but some either really produce 1000 updates a second due to malformation or bad creation, or are just handled that way due to a bug in ffmpeg that we will have to wait for a fix for
  • the hydrus jpeg mime type is now the correct image/jpeg, not image/jpg, thanks to users for noticing this (issue #646)
  • searching for similar files now requires up to 10,000x less sqlite query initiation overhead for large queries. the replacement system has overhead of its own, but it should be faster overall
  • improved error handling when a database cannot connect due to file system issues
  • the edit subscription(s) panels should be better about disabling the ui while heavy jobs, like large subscription resets, are running
  • the edit subscription(s) panels now do not allow an 'apply' if a big job is currently disabling the ui
  • cancelling a manage subscriptions call when missing query logs were detected no longer causes a little error
  • if a long-running asynchronous subscription job lasts beyond its parent's life, it now handles errors better
  • .
  • boring details:
  • improved a pre-optimisation decision tool for tag search that consults the autocomplete cache for expected end counts in order to make a better decision. it now handles subtag searches and multiple namespace/subtag searches such as for wildcards
  • wrote fast tag lookup tools for subtag and multiple namespace/subtag
  • fixed some bad simple tag search optimisation code, which was doing things in the wrong order!
  • optimised simple tag search optimisations when doing subtag searches
  • polished simple tag search code a bit more
  • added brief comments to all the new cross joins to reinforce their intention
  • greatly simplified the multiple namespace/subtag search used by wildcards
  • fixed and extended tag unit tests for blacklist, filterable, additional, service application, overwrite deleted filterable, and overwrite deleted additional
  • added a unit test for tag whitelist
  • extended the whole 'external tags' pipeline to discriminate between filterable and additional external tags, and cleaned up several parts of the related code
  • moved the edit subscription panel asynchronous info fetch code to my new async job object
  • cleaned up one last ugly 'fetch query log containers' async call in edit subscriptions panel
  • moved the edit subscription(s) panels asynchronous log container code to my new async job object
  • misc code cleanup

Don't miss a new hydrus release

NewReleases is sending notifications on new releases.