LANraragi 0.9.8 - Where Are We Now? #1631
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
Uh oh!
There was an error while loading. Please reload this page.
-
New summer, new heatwave.. But also new features!
This release comes with long-awaited UI improvements, and not one, but two new types of data objects to help you manage your Library! How extravagant.
I would recommend reading the Documentation even after these release notes to familiarize yourself with the new concepts this release brings to the table.
This release also enables OpenAPI validation by default for new installs, but the option to turn that off will remain.
Release Notes
🇩🇪 🇯🇵 German and Japanese are now available translations (via Weblate)
Thanks to all translation contributors for keeping the other languages up to date as well.
🖼️ libvips is now required for PDF support (#1611, @siliconfeces)
As part of simplifying the server dependency chain, it turns out libvips+poppler(on Windows) can handle pdf files as well as ghostscript does without having to wrangle syscalls manually.
You can still use ImageMagick for thumbnails, but I'd advise you install libvips as we'll eventually deprecate it entirely.
🔎 Cross-Archive Navigation in the Reader (#299, @psilabs-dev)
The Reader will now allow you to keep going to the next Archive in a search when applicable.
There's not much to talk about here as it's quite simple!
A set of new keyboard shortcuts have also been added to allow you to instantly go to the next/previous Archive with the "," and "." keys.
✅ Multi-selection mode in the Index (#826)
If you've used the Batch Operations page in the past to run a plugin or do some form of change to multiple Archives at once, you've likely found the process of selecting the Archives to work on to be painful.
Multi-Selection Mode aims to help with that. When the mode is enabled, you can search in the Index as usual, but any Archive you select will be kept in memory (aka the carousel) across searches.
Once done, you can then directly open the classic Batch Operations page with your selection pre-loaded.
I'm planning to add more options to Multi-Select mode itself over time to reduce the reliance on Batch, but I'm hoping this will make working on large swaths of files to be a more comfortable experience.
...Hmm, there's already another button though???
📚 Tankoubons/Meta-Archives are now available after a thousand years (#519, with @alethiophile)
One of the new things you can do from a selection of Archives is to merge them - This will create what we call a Tankoubon, and hide the merged Archives from search results.
Unlike Collections, Tanks are directly included in the database, will show in search, stats and backups alongside basic Archives, and can be read as a singular book in the web UI.
You can reorder the contents of a Tank however you want at any time through the usual Edit page.

You can even combine Tankoubons and Chapters for multi-level ordering!

See the Documentation for more detail.
📍 Stamps are now available (#1355, #1517, @EfronC)
Users can now add "Stamps" with the S key on any Reader page.

A Stamp contains time of creation, position on the image and some optional text data.
The intent is to allow users to bookmark specific pages, but also to provide tools for Danbooru-style translation overlays if people want to do that.
Future improvements include making the stamp icon customizable, allowing Plugins to add Stamps, as well as adding a global "history" view of all the stamps present on the server.
💮 Other changes
💾 Backups now run as Minion background jobs (Move backup generation/restore to Minion tasks to avoid timeouts #1204)
Backup generation and restore are handled by Minion jobs tied to the API, replacing the old blocking Controller logic.
🐳 Multi-stage Docker build (Convert to docker multi-stage build and drop Magick #1593, @Guerra24)
The Docker image now uses a multi-stage build and drops ImageMagick in favor of libvips.
🔢 Add a go-to-page shortcut to the Reader (Add go-to-page feature. #1519, @pneumaticity)
You can now use the "G" key in the Reader to quickjump to a page. All the more convenient with Tanks now!
🏷️ Parse top-level gallery-dl metadata into tags (Parse top-level GalleryDL metadata into tags #1526, @aspasia-patron)
The g-dl plugin now supports artist, language, etc. If they're at the top level. This is mainly used by nH but hopefully will help with other metadata sources.
📦 Front-end migrated to JS modules (Use proper JS modules #1548/Add htm, use for toasts #1577/Update marked, use dompurify for sanitizing html #1572, @siliconfeces)
Further JS cleanup improvements should land in 0.9.9.
Miscellaneous bugfixes and improvements
💎 Only push a new browser-history entry when the URL actually changes (Only push a new history entry if it is different from the current URL #1518, @pneumaticity)
💎 Fix the fullscreen and Index-settings context menu (Fix fullscreen and index settings context menu #1544, @Guerra24)
💎 Remember the last-selected metadata plugin in Edit (Remember last selected metadata plugin. #1598, @pneumaticity)
💎 Keep the display awake during auto next-page (Keep display on when using auto next page #1596, @yoraldo)
💎 Use loaded images instead of URLs to size double-page mode ([Bug] Auto-adjust to Double Pages not Working #1605, @Guerra24)
💎 Fix VIPS functionality on non-64-bit systems (Fix incorrect param type preventing VIPS functionality for non-64bit OS #1564, @siliconfeces)
💎 Fix file locking on NFS shares (Open lockfile with read access to fix flock on NFS #1590, @zakame; Address the probe part of the 1556 problem #1595, @psilabs-dev)
💎 Fix category filtering to respect the selected category (Fix category filtering by allowing doSearch to access selectedCategory #1602, @siliconfeces)
💎 Fix tank-related bugs (Fix tank-related bugs #1597, @psilabs-dev)
💎 Return promises in saveMetadata so saves complete reliably (Add return value to saveMetadata #1580, @psilabs-dev)
💎 Handle filename collisions on upload when "replace duplicates" is enabled (thanks @Reiyy !)
💎 Support a custom target filename for node_module installation (Add support for custom target filename for node_module installation #1557, @siliconfeces)
💎 Use the Net::IDN::Encode "trial" version (Use Net::IDN::Encode "trial" ver #1592, @Guerra24)
💎 Build-stability fixes (Build stability fixes #1619, @siliconfeces)
💎 Demote the search-engine init warning (demote search engine initialization warning #1550) and wakelock logs (demote wakelock logs to warn #1607) to warn level (@psilabs-dev)
💎 Docs: clarify Proxy-setup example headers (Clarify Proxy Setup example headers #1569, @voltaqs) and external readers (Mention Linux support in the reader docs #1571, @Guerra24)
💎 Fix an OpenAPI validation bypass (Fix OpenAPI validation bypass #1563)
💎 Add eslint to CI (Add eslint to CI #1576, @siliconfeces)
💎 Unified the sort id to the namespace and added sort to the URL query params in the Index (Implement archive navigation and read previous/next feature #1214, @psilabs-dev)
💎 A gorillion XSS fixes of various severity for some reason (Encode archive title #1581, Fix XSS through category names #1601, Fix XSS towards oneself during upload #1614, TDD the XSS #1603, Fix some Ecksesess #1606, @psilabs-dev, @siliconfeces)
API Changes
🔑 OpenAPI validation is now enforced for new installs
🔑 Added
/api/search/idsto only get raw Archive IDs for a given search query (Implement archive navigation and read previous/next feature #1214)🔑 Added
/api/archives/{id}/stampsendpoints for adding/removing Stamps to an Archive ([Feature Request] O-Counter / Nut-Button #1355)🔑 Added
/api/stamps/{id}to manipulate individual Stamp objects🔑 Added
POST /api/database/backupto queue generation of a database backup and/api/database/backup/{jobid}to download a generated backup. (Move backup generation/restore to Minion tasks to avoid timeouts #1204)🔑 Added a dedicated
/api/tankoubons/{id}/thumbnailAPI for getting/setting Tank thumbnails🔑 Added a dedicated
/api/tankoubons/{id}/progressAPI for Tank reading progression🔑 Changed
GET /api/tankoubons/{id}to not be paginated anymore and removedinclude_full_dataas an option🔑 Added an "append" option to
PUT /api/tankoubons/{id}🔑 Added
/api/tankoubons/{id}/fullto get paginated full Archive data for a Tankoubon (similar to the oldinclude_full_dataparameter)🔑 OpenAPI 3.1 fixes (OpenAPI 3.1 Fixes #1546, @turtletowerz)
🔑
use_pluginno longer errors on an invalid plugin (do not 500 when plugin missing #1558, @psilabs-dev)🔑 Falsy args are now coerced correctly (Allow coerced OpenAPI falsy args #1560, @psilabs-dev)
🔑
edit/callAPIBodynow explicitly sendapplication/json(Explicitly set application/json for edit and document callAPIBody #1579, @psilabs-dev)Full API Changelog: https://github.com/Difegue/LANraragi/commits/v.0.9.80/tools/openapi.yaml
Full Changelog: v.0.9.71...v.0.9.80
The Next Day would be the most tentative, and the slowest-paced, album that he had ever made. Bowie kept stressing that the sessions were only an experiment, one he could well scrap. It was similar to how he’d pitched Low to his musicians in 1976. Yet Low had come together in about a month. The Next Day would take two years.
wow, we're almost at 1.0.0!
This discussion was created from the release LANraragi 0.9.8 - Where Are We Now?.
Beta Was this translation helpful? Give feedback.
All reactions