fe.settings:getUserBoardSettings - non array given[hydrus] - Endchan Magrathea
https://youtube.com/watch?v=ERHk4wPOPKw
windows
zip: https://github.com/hydrusnetwork/hydrus/releases/download/v598/Hydrus.Network.598.-.Windows.-.Extract.only.zip
exe: https://github.com/hydrusnetwork/hydrus/releases/download/v598/Hydrus.Network.598.-.Windows.-.Installer.exe
macOS
app: https://github.com/hydrusnetwork/hydrus/releases/download/v598/Hydrus.Network.598.-.macOS.-.App.dmg
linux
tar.zst: https://github.com/hydrusnetwork/hydrus/releases/download/v598/Hydrus.Network.598.-.Linux.-.Executable.tar.zst

I had a great week fixing bugs and cleaning code.

Full changelog: https://hydrusnetwork.github.io/hydrus/changelog.html

fixing some mistakes

First off, I apologise to those who were hit by the 'serialisation' problems where certain importers were not saving correctly. I screwed up my import folder deduplication code last week; I had a test to make sure the deduplication transformation worked, but the test missed that some importers were not saving correctly afterwards. If you were hit by an import folder, subscription, or downloader page that would not save, this is now completely fixed. Nothing was damaged (it just could not save new work), and you do not have to do anything, so please just unpause anything that was paused and you should return to normal.

I hate having these errors, which are basically just a typo, so I have rejigged my testing regime to explicitly check for this with all my weekly changes. I hope it will not happen again, or at least not so stupidly. Let me know if you have any more trouble!

Relatedly, I went on a code-cleaning binge this week and hammered out a couple hundred 'linting' (code-checking) warnings, and found a handful of small true-positive problems in the mess. I've cleared out a whole haystack here, and I am determined to keep it clean, so future needles should stick out.

other stuff

I moved around a bunch of the checkboxes in the options dialog. Stuff that was in the options->tags and options->search pages is separated into file search, tag editing, and tag autocomplete tabs. The drag and drop options are also overhauled and moved to a new options->exporting page.

I rewrote the main 'ListBook' widget that the options dialog uses (where you have a list on the left that chooses panels on the right). If you have many tag services and they do not fit with the normal tabbed notebook, then under the new options->tag editing, you can now set to convert all tag service dialogs to use a ListBook instead. Everything works the same, it is just a different shape of widget.

A page that has no files selected now only uses the first n files (default 4096) to compute its 'selection tags' list when there are no files selected. This saves a bunch of update CPU time on big pages, particularly if you are looking at a big importer page that is continuously adding new files. You can change the n, including removing it entirely, under options->tag presentation.

If you are an advanced downloader maker, 'subsidiary page parsers' are now import/export/duplicate-able under the parsing UI.