Tumgik
hydrus · 3 days
Text
Version 572
youtube
windows
zip
exe
macOS
app
linux
tar.zst
I had a good simple week mostly doing just one thing: overhauling the 'share' menu.
Note: If you are updating from v570 or earlier and you use the Windows or Linux .zip or .tar.zst 'Extract' releases, you have to do a clean install one time to get v571 or later! (https://github.com/hydrusnetwork/hydrus/releases/tag/v571, https://hydrusnetwork.github.io/hydrus/getting_started_installing.html#clean_installs). If you are a Windows installer/macOS App/source user, you do not need to do a clean install to get over the v570->v571 bump; just update as normal.
full changelog
share menu
Like the 'open' menu a couple of weeks ago, the 'share' submenu you see off of the thumbnail or media viewer right-click menu has been given a full pass. The layout is clearer, and exactly the same in all locations, and everything it does is now mappable in the shortcuts system.
Also, you can now copy files' thumbnails as bitmaps from this menu. Should let you do saucenao style lookups on unusual filetypes that have a thumb but no normal image.
The shortcuts here are a bit smarter, too--like with the 'open similar files in a new page', I collapsed the four 'copy xxx hashes' commands down to one command with a dropdown (which has options for blurhash/pixel_hash, if you need them); and the three 'copy xxx bitmap' commands are now one with a dropdown that also has the new 'copy thumbnail bitmap' option. Most of the shortcuts also have a choice between 'do the focused file' vs 'do all selected files', if that is important (existing shortcuts will default to the latter, which was previous behaviour for stuff like 'copy sha256 hashes').
Note: I have removed the 'share on the local booru' command. The Local Booru (an optional way to share files with friends using hydrus) was a fun experiment, but I have decided to finally retire it. I never found enough time to dev it properly (I don't think I've touched it in at least five years), and there are many better ways to share files online, be that a third-party host you simply drag and drop to or a clever Client API solution. So, it is gone from the menu today, and I'll slowly dismantle it over the next few weeks until it is completely removed.
couple other things
There's a new checkbox under ''options->files and trash'' that adjusts the 'remove processed files after an archive/delete filter' to also remove the stuff you skipped.
Also, thanks to a user, there's a new 'e621' themed stylesheet under ''options->style''. Users who run from source who want to try this probably have an extra step to make sure this works--check the changelog/options panel help text.
next week
I've been thinking of adding a new tab to the autocomplete dropdown that will show children of the current context (e.g. you are looking at something with 'evangelion', in that tab you'll see 'asuka', 'rei', etc.. for quick selection). I think I will play with that idea and do some more misc small jobs.
1 note · View note
hydrus · 4 days
Text
Release Tomorrow!
I had a good if simple week. The 'share' menu (off of thumbnails or the media viewer) is completely overhauled, and everything in it added to the shortcuts system.
The release should be as normal tomorrow.
0 notes
hydrus · 10 days
Text
Version 571
youtube
windows
zip
exe
macOS
app
linux
tar.zst
I had a simple week working on some quality of life and background stuff. There are special install instructions this week!
full changelog
new build
tl;dr: If you use the Windows or Linux .zip or .tar.zst 'Extract' releases, you have to do a clean install! (https://hydrusnetwork.github.io/hydrus/getting_started_installing.html#clean_installs). If you are a Windows installer/macOS App/source user, you do not need to do a clean install; just update as normal.
The future build test went well, so I am folding the updates into the main build. The above releases are updated from Python 3.10 to 3.11, and Qt (UI) and OpenCV (image processing) are moved to newer versions. There aren't any super important changes, but a bunch of little things should work better or be a bit faster.
Unfortunately, the new libraries cause a dll conflict with v570 and earlier (basically the executable sees the py310 dlls beside the py311 ones and gets confused), so we need to clear the install directory of the old files. Just do the clean install and you should be fine!
You don't have to do it for the other modes because: the Windows installer basically does a clean install every time; the macOS App is always enclosed in its own thing doesn't have to worry about old files; and running from source doesn't care about dlls in the same way, although you might like to rebuild your venv today, just to catch up your own library versions.
If you do have trouble booting v571, then please revert to your v570 backup and let me know what happened! There were no problems in the test that people tried a couple weeks ago, so I'm not expecting anything much, but I'll jump on any reports. Also, if you have been struggling with some annoying menu or drag and drop bug, let me know if the new version of Qt fixed you.
the rest
The archive/delete filter gets a couple of workflow changes: first, if you finish a filter and there is more than one possible local file service to delete from, those 'commit' buttons are now disabled for 1.2 seconds. This is to catch you from spamming 'enter' through this dialog when it is suddenly different (I've done this myself more than once). Second, if you hate the idea of these buttons being disabled, and you always want to delete from all local file services anyway, please hit the new 'when finishing filtering, always delete from all possible domains' checkbox under options->files and trash, which lets you always have a simple 'commit' dialog that only shows 'delete from all local file services'.
The client now tries to load truncated images by default. The damaged images it now allows might be missing one pixel in the bottom right, or have a few lines of grey at the bottom, or might appear fine but just have some crazy metadata, but they won't, fingers crossed, fail with a 'malformed image' error any more. We had some stability problems with this mode some years ago, so I turned it off and only allowed it on in a debug menu on a per-session basis, but the situation seems to have cleared up, so it is now back on. If you need to turn it off, hit options->media.
Any time you have a normal single column list in the program, e.g. the list of URLs in 'manage urls', you can hit Ctrl+C or Ctrl+Insert and now it'll copy better strings (e.g. without '(1)' decorator cruft), and it'll copy every row you have selected.
I wrote a new emergency help document, 'help my db disappeared.txt', for the install_dir/db folder. If you ever boot up and get the 'this looks like the first time you have run the program' popup, there's now a guide to figure out what the hell happened.
next week
I didn't find the time to get to the 'share' menu rewrite, so I'll try again.
0 notes
hydrus · 11 days
Text
Release Tomorrow!
I had a mixed week. I did some boring stuff, some quality of life, and folded the 'future build' updates into the main release. Users who use the manual 'extract' releases will have special update instructions.
The release should otherwise be as normal tomorrow.
1 note · View note
hydrus · 17 days
Text
Version 570
youtube
windows
zip
exe
macOS
app
linux
tar.zst
I had a good week clearing simple jobs. There's nothing too clever, just a bunch of little fixes and improvements all over.
full changelog
highlights
All the tooltips in the program now wrap into a neater multi-line block. No more super long single-line tooltips!
The 'open' submenu when you right-click on the thumbnails or the media viewer has been cleaned up and plugged fully into the shortcuts system. It now looks and works exactly the same in either the thumbnail or media viewer view, and 'open file in web browser', 'open files in a new duplicates filter page', are added to the 'media' shortcut set. What was previously four 'show similar files: 0 (exact)' shortcut commands is now merged (and will be automatically updated in v570) into a single 'show similar files' command that lets you set any distance.
I fixed a stupid thing in manage tag siblings/parents that was too-frequently making it so when you spammed a bunch of pairs at it in one go, it wasn't allowing deletes (it was activating the 'only add' functionality). Should be fixed now, and it'll ask to petition pairs amidst adding others, but let me know if this changes your regular workflow annoyingly. These dialogs are way overdue for a complete overhaul.
I fixed some more URL encoding issues with some help from users. If you have a clever downloader that broke in the past couple of versions, sorry! Try it again, and let me know how it goes.
next week
More of this. I'll clean up the 'share' submenu like I just did the 'open' one, too.
Last week's test 'future build' seems to have gone well, no significant issues reported, so I will integrate that into the main build. Windows and Linux users who use the extract builds will have special 'clean install' instructions for v571, but I'll explain it all super easy when we get there.
1 note · View note
hydrus · 18 days
Text
Release Tomorrow!
I had a good week. I worked on simple bug fixes, code cleanup, and quality of life.
The release should be as normal tomorrow.
0 notes
hydrus · 24 days
Text
Version 569
youtube
windows
zip
exe
macOS
app
linux
tar.zst
I had a good week mostly fixing small things.
full changelog
highlights
I fixed some issues with last week's URL improvements. It is mostly advanced stuff, so if you are a downloader maker, please check the changelog.
For regular users who download from certain sites that can produce multiple files from one post (I am told that Pixiv was not affected, but Inkbunny was), I am afraid I made a stupid mistake that meant only the first file of those posts was being downloaded. This is now fixed, so if this affected you and you have a bunch of subscriptions, let's fix it: once you are in v569, load your subscriptions up and sort their queries by 'last check time'. Select what has run in the last week, copy the query texts, and then paste them into a new gallery search page with the file limit set to something like 50. Your client will go over what was missed and fill in any gaps.
I harmonised some search logic related to 'system:duration = 0', '<1', '!=0', and other variants around the zero edge case, for duration and the other simple predicates I updated a while ago. When I first wrote this, I tried to thread a needle of logic where in some cases it would return files with no duration and sometimes it would not, but it all ended up a mess, so, from now on, searching for any simple quantity that would include '0' will now include any file that has no value for that property. (e.g. an mp3 has no width, so now system:width < 200 will include mp3s).
If you are a Linux user who uses a hydrus.desktop file, check the changelog! You'll probably want to rename it, and it might even fix your program icon.
I fixed the 'remember last used default tag service in manage tag dialogs' checkbox and dropdown in options->search. It wasn't saving right, sorry for the trouble!
future build
I have a new 'Future Build' ready. This is a build the same as the one above, but it uses newer python and libraries. We do not know if those libraries cause any dll conflicts on any OSes, so if you are an advanced user and would like to help me test it, please check out this link:
next week
More small jobs. If I can, I'd like to focus on some UI quality of life.
1 note · View note
hydrus · 25 days
Text
Release Tomorrow!
I had a good week. I fixed a bunch of small issues, and I figured out the problems with the 'future' build, so I'll also have a special version for more advanced users to test out.
The release should be as normal tomorrow.
0 notes
hydrus · 1 month
Text
Version 568
youtube
windows
zip
exe
macOS
app
linux
tar.zst
I had a good couple of weeks mostly figuring out better behind-the-scenes URL handling.
full changelog
urls
For normal users, tl;dr: URLs better now, you don't have to do anything.
I made a dumb mistake when I first created the downloader engine in how I handle URLs behind the scenes, and today it is fixed. You don't have to do anything, and you shouldn't see any big changes, but in general, URLs and query texts with unusual characters should work better now. You may also notice a URL in the file log or search log will appear one way, e.g. with japanese kanji, but when you copy it to clipboard, it is all encoded to %EF kind of stuff--your browser address bar probably works the same way. It should just mean things copy between your hydrus and other programs with fewer hiccups.
If you regularly use some very odd URLs or downloaders, there might be a hiccup or two. A file that relies of strange encoded characters in its known urls might redownload one time if a subscription hits it, or one extremely strange query text (it'd be a single tag query that has a % character somewhere in the middle) might need to be renamed to %25. If you have a crazy custom downloader that relies on %-encoding tech, please pause it before you update, and then do a test afterwards--it may be the hack you added for the old system is no longer needed. In any case, let me know how you get on, and if we run into a problem with a certain downloader, we'll fix it together. Overall, I'm hoping that working with encoded URLs exclusively will make more complicated downloaders easier to figure out in future, rather than having to fight with odd characters all the time.
I decided to cancel this release last week because I wasn't confident on how I was handling the advanced edge cases of encoding here. I am happy I did, because while all the 'just download from a booru' style downloaders (like the defaults) were fine, the most experimental downloader situations (that e.g. needed encoded parameter keys) needed more work. If you are a downloader maker, then you will be in the guts of these changes, so please check out the changelog. There's new UI in 'manage url classes'--path components and parameters now have their own edit panels with linked text boxes that show the normal and encoded values of the stuff you are entering, and there's also new 'ephemeral token' tech that lets you decide in what ways undefined parameters should be clipped before the URL being sent to the server. The idea of the 'request URL' being different to the 'normalised URL' is broadly elevated and exposed across the program.
other highlights
I also added a 'tag in reverse' checkbox to the new 'manage tags' 'incremental tagger' thing. It adds tags like 5, 4, 3, 2, 1 instead of 1, 2, 3, 4, 5.
And all new system:url predicates have new labels. They are all a bit simpler, and they should copy/paste into the system predicate parsing system. All existing system:url predicates still have their old labels, so if this is a big deal, you'll want to recreate them and re-save your session/search.
Thanks to a user, the new docx, xlsx, and pptx file formats get some nicer thumbnails and a little metadata. It should all recalculate soon after update.
The Client API is now more careful about which files you can undelete, and it also now lets you clear file deletion records.
next week
I want to put proper time into getting a 'future build' working. Last time I tried, I ran into some technical problems related to the newer libraries I wanted to bundle, so I'll see if I can fix it all and have a test release for people to try. Otherwise, I just want to clear out some small jobs that this URL work boshed.
1 note · View note
hydrus · 1 month
Text
Release Tomorrow!
I had a great week. I tightened up the URL storage/handling improvements that I was not confident in last week, so I am very happy to put out the release tomorrow. There are also advanced new tools for downloader makers for handling 'ephemeral token' parameters along with new quality of life UI in the manage URL Classes dialog. For normal users, there are also several bug fixes, file handling improvements, and a couple little things in system predicates, emoji tag presentation, and reversed tags in the new incremental tagger.
The release should be as normal tomorrow.
3 notes · View notes
hydrus · 1 month
Text
Release Tomorrow!
I had an ok week. I reworked some URL handling in ways that are mostly important behind the scenes and cleared some small jobs. It'll just be a simple release.
The release should be as normal tomorrow.
EDIT: The v567 release is cancelled! We found a problem and I need to do more work on it. I will move it on to next Wednesday, sorry for the inconvenience!
1 note · View note
hydrus · 2 months
Text
Version 566
youtube
windows
zip
exe
macOS
app
linux
tar.zst
I had a good week. The long-awaited incremental tagger is ready, and the program supports some more document types. You will get a yes/no on update, but it isn't a big deal.
full changelog
incremental tagger
When you open the manage tags dialog on several thumbnails, it now has a '±' button that lets you tag the files 'page:1', 'page:2', 'page:3' and so on. You can set the namespace (or no namespace), the starting point (so you can start at 'page:18' if you need to), the 'step' (so you can count by +2, or even -1 to decrement), and even prefix/suffix for the number if you need to decorate with 'page:x (wip)' or something.
I'm quite happy with how this worked out. There's some live text that gives you a preview of what's about to happen, so the best way to get to grips with it is to play with it. Just click and poke around, and let me know how you get on. Namespace will be remembered between opens, and if the first file in your selection has a number tag for that namespace, it'll set the 'start' position to that value. If you are setting page tags to a bunch of chapters, or gaps in a larger body, a bit of prep/overlap may help things here.
We've wanted this for years and years, and while I'm not expecting the program to handle paged content beautifully now, this is a decent step forward.
docx and friends
The document types .docx, .xlsx, and .pptx, which are the newer Microsoft Office 'Open' formats, are now recognised by the client. These are secretly zips, so there's a chance you have some in your client already. On update, you'll be asked if you want to scan your client's existing zips to see if they were really one of these. You probably don't, so it isn't a big deal, but if you think you do, hit yes and they should appear.
next week
Cloudflare are rolling out some annoying new cache-optimising tech that is causing file dupes, so I need to work on URL handling so we can patch the most-affected sites.
1 note · View note
hydrus · 2 months
Text
Release Tomorrow!
I had a good week. The 'incremental tagger' system is working, allowing you to tag page:3, page:4, page:5 … page:17 and similar to a selection of files, and .docx files are now importable.
The release should be as normal tomorrow.
0 notes
hydrus · 2 months
Text
Version 565
youtube
windows
zip
exe
macOS
app
linux
tar.zst
I had a simple week. Lots of small changes today. The update step may take a couple of minutes.
full changelog
highlights
You are going to get a couple yes/no dialogs on update this week talking about deleting some mis-parsed URLs. If you do not manually store weird data in your 'known urls' store, just click yes. If you have lots of URLs, the work will take a couple of minutes.
options->sort/collect now has four different default tag sort widgets! You can set the default tag sort for search pages, the media viewer, and the manage tags dialogs launched off them.
There's a new 'media' shortcut action 'copy file known urls', that copies all the known urls of your current media selection.
Sidecars set to import to file notes now have an optional 'forced name' field, so if you ave a .txt file with only note text, no name, you can now force it. Some of the UI is less jank here too.
The tag filter UI also got a little polish. There's less logic jank, better labels and tooltips, and you can now copy listed namespace entries to the clipboard and get something you can paste back in elsewhere.
next week
I did not get to the manage tags dialog incremental tagging thing this week, so I'll try again.
2 notes · View notes
hydrus · 2 months
Text
Release Tomorrow!
I had a simple week, mostly fixing a bunch of bugs.
The release should be as normal tomorrow.
0 notes
hydrus · 2 months
Text
Version 564
youtube
windows
zip
exe
macOS
app
linux
tar.zst
I had a good week, several system predicates have better range-based searching.
full changelog
highlights
The system predicates for width, height, num_notes, num_words, num_urls, num_frames, duration, and framerate now support two different kinds of approximate equals (≈): absolute (±x), and percentage (±x%). Previously, the ≈ secretly just did ±15% in all cases, but now you set how and how far they go.
Also, any 'system:framerate' predicate that was '=' will now be converted to ±5%, which is what it was secretly doing before, and any 'system:duration' '=' predicate will also be converted to ±5%, which is what it really should have been doing before. 'system:duration' also allows hours/minutes input, for longer videos.
This predicate overhaul was an important cleanup job, replacing a ton of hacky ancient code with something that is easier to update and maintain. I've collapsed all these preds down to a lot of shared UI and logic, so let me know if there are any display/search quirks, but once we have it nailed down, I hope to replicate this work for the more complicated system predicates.
I reworked what 'Space' does in the media viewer by default. I am updating existing users too, so you'll probably get a little popup about it when you update. Essentially, if you are still on the default shortcuts, Space will now only send 'pause/play media'. It no longer does 'yes' on the archive/delete filter or 'this is better' on the duplicate filter. If you want to go back to how it was, sorry for the trouble--hit up file->shortcuts to set it back.
Thanks to a user, space also does a new 'Quick Look' for macOS users on thumbnails. Try it out! If you are a 'running from source' macOS user, make sure to rebuild your venv this week, or it won't work!
next week
I'd like to figure out incremental tagging on the manage tags dialog, so you can select 20 files and tag them page:7 through to page:26 in one step. Let's see how it goes.
1 note · View note
hydrus · 2 months
Text
Release Tomorrow!
I had a good week. A bunch of system predicates now support customisable +/- ranges, both by absolute and percentage values.
The release should be as normal tomorrow.
1 note · View note