LANraragi 0.9.3 - Law (Earthlings on Fire) #1135
Difegue
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Merry Christmas! To wrap up the year, I am bringing you the gift of Chinese.
This release clears out a few long-standing feature requests; We haven't had sub-500 issue numbers in a long time!
There are also a fair amount of new features, new plugins(GalleryDL is here!), existing plugin fixes, and API doodads for clients to play with.
I hope you all have an excellent end of the year -- Surely tanks will be finished in 2025.
🖼️ Thumbnail improvements (#953 / #1059 / #1076)
Last release broke automatic generation of cover thumbnails in an attempt to spam the job queue less; This should now be fixed.
Page thumbnails improved a lot last time but were a bit slower as a result; I've reintroduced some multithreading there so that beefy machines don't get stuck for ages generating all pages if they can help it.
And finally, in what is a bit of a breaking change, the default mount directory for thumbnails has changed.
It used to be a subdirectory of the
content
folder, but as recent changes made it possible to be its own Docker volume, this made the situation convoluted and hard to work with.tl;dr
/home/koyomi/lanraragi/content/thumb
is now/home/koyomi/lanraragi/thumb
.Feel free to set it back to the old location in server settings if you want to keep the old behavior. Sorry for the trouble!
🌟 Added Rating option on WebUI contextMenu (#873, @Hanga7yr)
There's some new shorthand UI for creating and deleting
rating:xxx
tags.It might be possible to allow being able to set those ratings from the Reader page as well in the future, like what has been done for Categories... But for now this is only usable in the Index.
📚 Tankoubons are progressing (#519, #1045) (@EfronC)
While there's no UI yet, if you use the API to assign archives to Tankoubons, they will all be grouped under said tank, which will show up in search.
Tankoubons can also now have their own summary and tags -- Tankoubon-specific tags will be added to the sum of the tags of all the contained archives.
The feature is still a WIP and is disabled in the web UI;
Clients can use the grouping mechanism with the search API by using the
group_tanks
flag.🈁 Localization support and official CN translation (#617, @Haibersut)
This has been a longstanding ask to the point there are maintained translated forks of the server -- There have been attempts to bring localizations in a few times but I never managed to make anything pan out... Until now! Many thanks to @Haibersut for going through with this anew.
LRR is now (mostly) fully localizable, and will adapt its display language to whatever your browser requests (through the
Accept-Language
header) if it supports it.. Which for now really just means english and chinese.The current work translates most of the webapp - Some dynamic popup messages will remain untranslated in this release.
More languages coming soon -- If you wish to contribute yourself, feel free to check the Documentation.
This was another longstanding request for folks who wanted to deploy LANraragi without using an entire toplevel domain or subdomain.
You can now configure
base_url_path
inlrr.conf
to allow for subdirectory deployment.E.g. if a top-level deployment had the URL
manga.example.com
, a subdirectory deployment might have the URLexample.com/manga
. LANraragi can be used as normal, with all its internal URLs rewritten to be under the/manga
subdirectory:🎁 Other changes
Plugin Dev QoL updates (Named params #1091 / plugin loader should do all the checks #1071 / changes exception handling for plugins #1041, @IceBreeze)
💣 Error handling from plugins is now handled more gracefully at the plugin loader level.
💥 This really mostly means you can write sloppier code than before and stop caring about error checking -- Any
die
exceptions thrown from plugins will be mirrored to a proper error message for end users.🧩 Plugins can now use named parameters instead of the previous array mechanism - See the Documentation if you fancy migrating.
Upload API endpoint (Implement upload API #1085, @psilabs-dev)
⬆️ This API implementation (using multipart/form-data encoding) allows users to perform language-agnostic archive migrations or mirrors from their existing archive servers and downloaders to the LRR server via the API, or write comparatively thin HTTP client wrappers around their downloaders that negotiate with and push to LRR during that application's runtime.
🏣 You can also attach the SHA1 hash of the file to check for file integrity and avoid corruptions during transit.
Fix Docker healthcheck failing with proxies and ipv6 (
wget
used by container health check does not respect 'no_proxy' environment variable. #1040, Explicitly use ipv4 in Docker healthcheck #1117, @psilabs-dev)🐋 The built-in healthcheck is a dumb wget and will false fail in a lot of cases... But we fixed some of them with this update.
Plugin updates
🆕 Add plugin to copy tags from another archive ID (@IceBreeze)
🆕 Add GalleryDL plugin (Initial version of the GalleryDL Metadata plugin #1109, @okaros)
🧩 [ComicInfo] Add support for elements in ComicInfo files (Unable to get all tags with ComicInfo plugin #1047)
🧩 [Koromo] Avoid ARRAY garbage tags for unexpected koromo info.json files (Avoid ARRAY garbage tags for unexpected koromo info.json files #1050, @siliconfeces)
🧩 [Eze] Check for existing upload_date tag before processing (fix: check exist upload_date tag before processing #1046, @lnhpm)
🧩 [HDoujin] Improve HDoujin info.txt parsing with additional field support (Improve HDoujin info.txt parsing #1053, @HDoujinDownloader)
🧩 [RegexParse] Add testing for RegexParse (Add testing for RegexParse #1060, @siliconfeces)
🧩 [HDoujin] Add title and source extraction for HDoujin info files (Add title and source extraction for HDoujin info files #1068, @HDoujinDownloader)
🧩 [nH] Fix local filepaths not being decoded before being used for seach (Fix searched as grabed text #1074, @natanane)
🧩 [nH] Add support to set upload date in timestamp field using epoch stamp ([nHentai] Add support to set upload date in timestamp field using epoch stamp #1077, @shinji257)
🧩 [FAKKU] Add option to use FAKKU plugin safely (add option to use FAKKU plugin safely #1082, @nivkner)
🧩 [ComicInfo] Add Title parsing and updating to ComicInfo (Add Title parsing and updating to ComicInfo #1098, @shinji257)
🧩 [Pixiv] Add Pixiv summary (Add Pixiv summary #1105, @psilabs-dev)
🧩 [FAKKU] Fixed Fakku summary and added thumb folder to gitignore. (Fixed Fakku summary (again) and added "thumb" folder to gitignore. #1113, @Nixis198)
🧩 [RegexParse] Add support for multiple artists in filename (Filename Parsing Plug-in function request #1084, @IceBreeze)
Miscellaneous bugfixes and improvements
💎 (Use string-based comparison (cmp) rather than numeric <=> for IDs #1037) Use string-based comparison (cmp) rather than numeric <=> for IDs (@siliconfeces)
💎 Fix backup generation failing if content folder is Readonly
💎 Add support for .zst and .tar.zst archives (Add support for .zst and .tar.zst archives #1063, @baysonfox)
💎 (Tag edit features broken on mobile #1055) Fix tag edit fields on mobile (@alethiophile)
💎 (Impossible to downgrade to any older version after installing any version post 0.9.20 #1070) Fix Windows uninstall failing if wslconfig.exe is unavailable
💎 Fix archive count stat not being counted correctly
💎 Add logging to debug occasional filetype failures on mass downloads
💎 (Unable to download from Chaika #846) Add some basic retry logic for blank content-disposition headers
💎 Fix the issue where "Pin this Category" doesn't work in Chrome (Fix the issue where "Pin this Category" doesn't work in Chrome #1132, @Reiyy)
💎 Test for file existence before removing mojo/minion/shinobu pid files (Test for file existance before removing mojo/minion/shinobu pid files #1110, @okaros)
💎 Fix incorrectly fired
page_thumb
jobs when the cover is missing💎 Update npm, Mojo and Minion versions
💎 Fix incorrect search sorting in some cases (Search API sorting logic bug #1122, @psilabs-dev)
💎 Fix noisy logs (Fix noisy logs #1125, @psilabs-dev)
💎 Add docs and permission-fixing to the plugin sideload directory
API Changes
🔑 (api/search/random Endpoint Sometimes Doesn't Return Amount Requested in count Parameter #1119) Add
recordsTotal
to/api/search/random
🔑 (Implement upload API #1085) Implement
/api/archives/upload
(@psilabs-dev)🔑 Fix JSON types on
/api/info
-- This is a breaking change. (thanks @MegrezZhu for a bugfix on this)🔑 Add a cleaner
successMessage
to metadata update API🔑 ([API] Statistics API end point like those displayed on /stats #1080) Add total_archives to /api/info
🔑 (Add "Meta-Archives" collection of IDs #519) Add parameter to search API to group IDs into tanks if enabled
🔑 PUT
/api/tankoubons/:id/archive
is now PUT/api/tankoubons/:id
and the payload has changed to accomodate being able to set specific summary/tags for Tanks.Full Changelog: v.0.9.22...v.0.9.30
Bowie saw Russell as predicting the data avalanche of the Internet. You can attempt to use the information it generates to shore up your preconceptions, or you can simply sit on the banks and watch an endless, ever-broadening stream of information go by. Russell “was right, mean old bastard that he was,” Bowie said in 1997.
This discussion was created from the release LANraragi 0.9.3 - Law (Earthlings on Fire).
Beta Was this translation helpful? Give feedback.
All reactions