KOReader 2025.04 “Full Moon”
The user guide received a big update, full changelog here.
Dictionaries with images now automatically take the res
folder as their point of departure (#12877). This means you’ll have to adjust your dictionary content scripts. If you’re lucky you can simply delete them.
Various changes in plugins:
exporter
plugin drops support for memos and flomo. You can install them from https://github.com/koreader/contrib if they work for you as is but they won’t receive support here.autofrontlight
plugin was removed.backgroundrunner
plugin was removed. Third party plugins that rely on it to work need to be updated!
New support for KindleHF. Any Kindle running firmware ≥ 5.16.3 will need the kindlehf
package.
This month’s logo was contributed by @Sonnenfee
We’d like to thank all contributors for their efforts. Some highlights since the previous release include:
- bump base for many updated libraries and assorted fixes (#12759, #12761, #12773, #12780, #12796, #12956, #12822) @benoit-pierre
- pocketbook: support “extended” key events (#12707) @benoit-pierre
- Screenshoter: fix screenshot folder (#12750) @hius07
- factorize reflow code (#12729) @benoit-pierre
- add faster option to export text selections via qr codes (#12746) @Commodore64user
- Notebook file (#12699) @hius07
- Highlight: line height (#12721) @hius07
- ci/macos: fix possible issue during brew install (#12767) @benoit-pierre
- doc: minor tweak to building requirements (#12762) @benoit-pierre
- No frontlight devices – disable irrelevant plugins (#12766) @mergen3107
- android: bump luajit-launcher (#12779) @benoit-pierre
- Highlights: page boxes cache (#12768) @hius07
- tests: speedup readhistory reduce test (#12785) @benoit-pierre
- tests: speedup persist huge tables test (#12786) @benoit-pierre
- Decode wpa_supplicant SSID when already connected (#12782) @wfdewith
- [Kindle NT] fix terminal and timesync (#12765) @mergen3107
- [screensaver menu] remove gesture based option from NT devices (#12747) @Commodore64user
- make: factorize code for generating release updates (#12655) @benoit-pierre
- ci/macos: enable tests (#12784) @benoit-pierre
- webdav: show folders with same name as current folder (#12788) @BrendanL79
- screensaver: Add dynamic battery symbol to sleep screen message (#12548) @LostishCode
- switch to new meson based testsuite runner (#12789) @benoit-pierre
- Update epubdownloadbackend.lua (New logic to handle multiple selectors) (#12804) @kulasegaram
- ci/circle: fix ccache cache (#12802) @benoit-pierre
- Schedule next standby on AutoStandby plugin init (#12815) @sebastien-maillard
- Translator: Add romanizations setting in Translation settings (#12829) @eric-p-hutchins
- [AutoSuspend] Make day selector less restrictive (#12835) @zwim
- [KOPlugin] Hotkeys, add custom keyboard shortcuts (#12484) @Commodore64user
- Collections: search (#12776) @hius07
- Bump luajit-launcher (#12850) @hugleo
- [plugin] Patch management: fix disabling plugin (#12849) @Frenzie
- Allow overriding font-based normal line-height (#12483) @moben
- CreDocument: tweak when the default font is set (#12846) @poire-z
- Highlights: anchored dialogs (#12810) @hius07
- FileManager, History, Collections: expose file dialog buttons (#12845) @hius07
- FileManagerBookInfo: fix logic in getCoverImage() (#12852) @hius07
- remove autofrontlight + backgroundrunner (#12809) @pazos
- Exporter: drop unsupported (memos & flomo). (#12808) @pazos
- FileManager: Plus dialog button from CoverBrowser (#12857) @hius07
- kodev: tweak test command (#12864) @benoit-pierre
- Patch management: plugin -> core (#12862) @hius07
- Remove onSetFullScreen() (#12871) @hius07
- [Profiles] search and update profile actions assigned to hotkeys (#12642) @Commodore64user
- doc: update macOS build instructions (#12886) @benoit-pierre
- Screenshoter: add filename and page number (#12887) @Frenzie
- bump base (#12894) @Frenzie
- Profiles: auto-exec “on book opening” – new books (#12884) @hius07
- Dictionary: fix missing images (#12877) @TnS-hun
- Update macOS PATH shenanigans (#12873) @NiLuJe
- QR code plugin bug fix (#12833) @Commodore64user
- [HotKeys] adds ‘type to search’ setting to hasKeyboard devices (#12860) @Commodore64user
- [Dispatcher] remove gesture mentions from NT (#12889) @Commodore64user
- CoverBrowser: minor fix and remove unused (#12895) @hius07
- Collections: add books from a folder (#12892) @hius07
- VocabBuilder.koplugin: support option to overwrite word with new context (#12885) @weijiuqiao
- VocabBuilder.koplugin: support PDF context extraction for multi-word phrase (#12917) @weijiuqiao
- add provider module (#12641) @pazos
- Reader: inspect zip file content to choose provider (#12902) @hius07
- vocabbuilder.koplugin: fix selecting context bug (#12938) @weijiuqiao
- bump base (#12939) @benoit-pierre
- speedup testsuite (#12906) @benoit-pierre
- CoverBrowser BookInfoManager: lite getDocProps() (#12936) @hius07
- ReaderSearch results: search string always in bold (#12940) @hius07
- PathChooser: title bar fm_style (#12942) @hius07
- Add support of KindlePaperwhite5 Signature Edition light sensor (#12946) @hius07
- [plugin] NewsDownloader: support single-entry feeds (#12958) @Frenzie
- Wikipedia EPUBs: fix missing symbols at start of headings (#12961) @poire-z
- [plugin] NewsDownloader: fix Atom download_full_article=false not working (#12959) @Frenzie
- [plugin] NewsDownloader: switch default to download_full_article=false (#12965) @Frenzie
- End of document menu: minor fix (#12962) @hius07
- Annotations: add datetime_updated property (#12963) @hius07
- [lang] Exporter → Nextcloud: use proper arrow (#12970) @Frenzie
- [plugin] NewsDownloader: download images without extension (#12969) @Frenzie
- [plugin, i18n] CoverBrowser: add missing plural (#12968) @Frenzie
- Vocabbuiler.koplugin: Fix pdf context extraction with hyphenation (#12975) @weijiuqiao
- [plugin] NewsDownloader: fail gracefully when date can’t be parsed (#12978) @Frenzie
- socketutil: remove URL from user agent, add device info (#12977) @Frenzie
- fix base commit (#12982) @benoit-pierre
- [plugin] NewsDownloader: reduce HTML idiosyncracies (#12976) @Frenzie
- [plugin] NewsDownloader: add primitive support for relative URLs (#12980) @Frenzie
- socketutil: use Device.model directly (#12992) @Frenzie
- Bump base for KindleHF: Downgrade mtune to A9 (#12996) @Frenzie
- [device] Add the new kindle line-up (#12990) @notmarek
- InputDialog: Make sure keyboard_visible is never nil’ed (#12994) @NiLuJe
- [MultiInputDialog] vertically centre multi input dialogue (#12951) @Commodore64user
- [plugin] ReadTimer: interpret the past as a time tomorrow (#12985) @Frenzie
- File list: new display options (#12954) @hius07
- Export plugin: support multiple authors in Nextcloud export (#13005) @kotnik
- Collections: filter by metadata (#12981) @hius07
- [plugin] NewsDownloader: use first feed description if it’s a table in RSS (#13032) @Frenzie
- processImg: skip data URI (#13034) @Frenzie
- Annotations: fix matchFunc (#13037) @hius07
- [device] add Kindle Scribe 2 support (#13051) @notmarek
- Reduce sleep screen message’s font size to fit one line (#13026) @Commodore64user
- Dictionary, footnotes: highlight the selected text (#12948) @TnS-hun
- wallabag: Add option to archive locally, instead of deleting + rewording of menu options (#12949) @harmtemolder
- EPUB: mimetype file should not be compressed (#13057) @Frenzie
- [plugin] Gestures, Hotkeys: attempt to work around corrupted gestures file (#13054) @Frenzie
- [minor] normalize a few requires (#13055) @Frenzie
- [i18n, plugins] Wallabag: use ngettext for plural (#13062) @Frenzie
- feat(readerdictionary): add ability to use kiwix standalone (#13060) @dtomvan
- EPUB: unify include_images logic (#13063) @Frenzie
- [minor, plugin] NewsDownloader: fix a string that’s concatenated without space or newline (#13071) @Frenzie
- [plugin] NewsDownloader: make <title> match less greedy (#13070) @Frenzie
- kosync: Make sure there are no leading or trailing whitespaces. (#13077) @beedaddy
- [minor] Normalize more requires (#13074) @Frenzie
- [screensaver] Ignore sleep screen cover conditionally (#13068) @Commodore64user
- EPUB: limit image download display updates to once per second (#13073) @Frenzie
- CoverBrowser info_cache: move to core (#13018) @hius07
- [minor] Remove accidental self from util.calcFreeMem() (#13096) @Frenzie
- [doc] Update Trapper:info() documentation (#13095) @Frenzie
- [screenshoter] Fix bug in ‘set as wallpaper’ setting. (#13108) @Commodore64user
- [screensaver] Add option to cycle through folder images (#13094) @Commodore64user
- Bump luajit-launcher (#13112) @hugleo
- Persist: add support for zstd serialization/deserialization in memory (#13122) @Frenzie
- Collections: filter by book status (#13099) @hius07
- BookShortcuts: open file with associated provider (#13106) @hius07
- bump base (#13140) @benoit-pierre
- ci/macos: tweak ccache handling (#13141) @benoit-pierre
- Gesture manager and Profiles: improve Dispatcher actions menu (#13078) @hius07
- ReaderStatus: fix End of Document action (#13144) @hius07
- [ReaderHighlight] rewrite some UI strings (#13145) @Commodore64user
- bump base (#13150) @benoit-pierre
- ImageWidget: fix stretch limit not being obeyed (#13105) @Commodore64user
- ReaderHighlight: add overlooked “crosshairs” (#13152) @Frenzie
- always compile with debug information (#13151) @benoit-pierre
- [ReaderHighlight] NT: Improve selection of hyphenated words (#13129) @Commodore64user
- BookList: fix book status (#13157) @hius07
- “Invert page turn taps and swipes” fix (#13155) @hius07
- NewsDownloader: deal with 404 and other error statuses better (#13165) @Frenzie
- Add CacheSQLite (#13131) @Frenzie
- [SortWidget] NT: add new keyEvents to widget (#13154) @Commodore64user
- Bump luajit-launcher (#13166) @hugleo
- Bump luajit-launcher (#13170) @hugleo
- ReaderView: fix resetting screen boxes cache (#13169) @hius07
- [screenshoter] remove ‘set as wallpaper’ from devices with special offers (#13110) @Commodore64user
- NewsDownloader: add a cache to reduce wasted bandwidth (#13171) @Frenzie
- [chore] NewsDownloader: remove dead code (#13178) @Frenzie
- [chore] NewsDownloader: remove custom redirect handling (#13179) @Frenzie
- GestureDetector: Translate start & end gesture positions when rotated (#13101) @NiLuJe
- NewsDownloader: a couple of cache improvements (#13181) @Frenzie
- NewsDownloader: some random cleanup (#13182) @Frenzie
- Couple of minor fixes (#13185) @hius07
- [ReaderFooter] keep menu open after arranging items in status bar (#13168) @Commodore64user
- [SortWidget] add cancelOrClose method (#13189) @Commodore64user
- NewsDownloader: process HTML with cre.getBalancedHTML() to ensure self-closing tags like
<hr>
are closed like<hr/>
(#13188) @Frenzie - Kindle: demote Warn to Info (#13196) @yparitcher
- Highlights: fix page boxes cache (#13200) @hius07
- [Hotkeys] refactor hotkey list and update callbacks (#13219) @Commodore64user
- [Common settings] remove screenshot setting from unsupported devices (#13221) @Commodore64user
- Dispatcher: action list fixes (#13167) @hius07
- Collections: search in book content (#13139) @hius07
- Dispatcher: fix remove actions (#13227) @hius07
- fix: Added OSS-Dict support (#13224) @farfromrefug
- OPDS: raw server filenames for download (#13230) @hius07
- Exporter: migrate to rapidjson (#13204) @pazos
- Fix typo in PocketBook init (#13238) @Frenzie
- Highlights: quicker Style and Note marker dialogs (#13223) @hius07
- calibre.koplugin: show message when attempting to connect via dispatcher (#13237) @pazos
- ReaderUI: fix BookList cache (#13245) @hius07
- [Hotkeys] override self.ui.fonts key_events (#13257) @Commodore64user
- Style tweaks: add ‘Set on/off’ action to Dispatcher (#13242) @hius07
- [plugin] NewsDownloader: don’t try to strip <script> tags (#13260) @Frenzie
- HtmlBoxWidget: fix incorrect selection (#13276) @TnS-hun
- [plugin] Terminal: improve LDoc module definition for terminputtext.lua (#13273) @Frenzie
- [DictQuickLookup] NT: add text selection to the dictionary widget (#13232) @Commodore64user
- CoverBrowser BookInfoManager: handle zip (#13290) @hius07
- Collections: sort (#13264) @hius07
- bump base (#13301) @benoit-pierre
- doc: fix / update build instructions for Alpine Linux (#13319) @benoit-pierre
- [minor] Fix “Screen timeout” capitalization (#13332) @Frenzie
- FileSearcher: consistent results window (#13298) @hius07
- [DoubleSpinWidget, SpinWidget] change values with page-turn buttons (#13208) @Commodore64user
- [DateTimeWidget] add key_events and fix setting dates (#13214) @Commodore64user
- PL keyboard layout: move “ó” and “Ó” to east on keypopup (#13347) @K4rBie
- Collections: connect folders (#13336) @hius07
- OPDS: group downloading (#13338) @hius07
- KoptOptions: fix rtl (#13350) @hius07
- [ReaderHighlight] NT: account for status and alt-status bars in text selection (#13348) @Commodore64user
- [InfoMessage] stop force_one_line if font is too small (#13337) @Commodore64user
- [plugin] HTTPInspector: return InputEvent on every call to reset standby/suspend timer (#13339) @Frenzie
- Opds-pse v1.2 [LastRead] (#13357) @showyee
- Highlights: edit boundaries in pdf (#13364) @hius07
- KeyValuePage: landscape and portrait items per page (#13377) @hius07
- Annotations: sync between devices (#13372) @hius07
- Fix wallabag’s “Prefer original non-HTML document” setting (#13333) @harmtemolder
- Bump base (#13396) @Frenzie
- Statistics: actions to enable/disable (#13387) @hius07
- feat(cloudstorage/webdav): Show ‘file size’ property in WebDAV (#13371) @Linus045
- Book shortcuts: scripts support (#13393) @hius07
- Profiles: auto-exec time interval (#13399) @hius07
- [plugin/NEWS-RSS] Handle missing description gracefully in rss feed (#13407) @Blizarre
- Expose txt_preformatted to UI (#13392) @hius07
- fix for Add new entry show the url from the last added entry in NoewDownloader (#13411) @Blizarre
- Do not discard RSS/Atom feed processing errors (#13413) @Blizarre
- [News Downloader UI] Fix missing elements in the Add feeds window (#13415) @Blizarre
- [plugin] HttpInspector: avoid crash when port can’t be bound (#13421) @Frenzie
- Add key_repeat support to kindle NT (#13328) @Commodore64user
- Menu widget: “Go to letter” everywhere (#13405) @hius07
- PDF: single-word search with leading and trailing spaces (#13414) @hius07
- Update en_popup.lua (#13425) @Belarusan
- Open previous file in last book folder (#13424, #13431) @hius07
- bump luajit-launcher (#13432) @pazos
- Old plugins cleanup (#12932) @pazos
- OPDS: fix group download (#13428) @hius07
- CoverBrowser list mode: fix shortcut icon position (#13429) @hius07
- Profiles: add “on exiting sleep screen” auto-exec trigger (#13430) @hius07
- Reflowable documents: fix sync T/B margins (#13439) @hius07
- OPDS: fix calling “file downloaded” dialog (#13443) @hius07
- File browser: sort by metadata (#13437) @hius07
- [UnderlineContainer] “fix” focus underline for RTL UI (#13454) @Commodore64user
- Menu widget: go to letter for folders (#13460) @hius07
- Dispatcher: ignore order for single-action gesture (#13450) @hius07
- Status strings translation context (#13459) @hius07
- File searcher: fix menu appearance (#13465) @hius07
- Menu search fixes (#13493) @hius07
- VocabBuilder: fix SortWidget method name (#13495) @hius07
- One time migration: fix last migration date (#13499) @hius07
- [Plugin] Added support for hexadecimal code points to OPDS parser (#13482) @ReneeIbeji
- Update some links in Porting.md (#13504) @KPCOFGS
- Dispatcher: fix action deleted arg (#13488) @hius07
- File browser: filter by status (#13503) @hius07
- [ReaderLink, Dispatcher] add toggle for tap-to-follow links (#13469) @Commodore64user
- avoid debian fonts (#13512) @pazos
- calibre: add timeout to connection message (#13513) @pazos
- Key press handlers to show upper menu (#13511) @hius07
- Selected files: more actions (#13510) @hius07
- CoverBrowser: fix Settings menu item position (#13516) @hius07
- [plugin] calibre: fix a nil concatenation typo (#13484) @Frenzie
- fix thirdparty exporters (#13531) @pazos
- OPDSBrowser: analyze acquisition mimetype (#13535) @hius07
- Quote directory in util.diskUsage (#13448) @0xr0bert
New Contributors
- @BrendanL79 made their first contribution in #12788
- @LostishCode made their first contribution in #12548
- @kulasegaram made their first contribution in #12804
- @sebastien-maillard made their first contribution in #12815
- @eric-p-hutchins made their first contribution in #12829
- @moben made their first contribution in #12483
- @harmtemolder made their first contribution in #12949
- @dtomvan made their first contribution in #13060
- @beedaddy made their first contribution in #13077
- @farfromrefug made their first contribution in #13224
- @K4rBie made their first contribution in #13347
- @showyee made their first contribution in #13357
- @Linus045 made their first contribution in #13371
- @Blizarre made their first contribution in #13407
- @Belarusan made their first contribution in #13425
- @ReneeIbeji made their first contribution in #13482
- @KPCOFGS made their first contribution in #13504
- @0xr0bert made their first contribution in #13448
Full Changelog: v2024.11...v2025.04 — closed milestone issues
Installation instructions: Android • Cervantes • ChromeOS • Kindle • Kobo • PocketBook • ReMarkable • Desktop Linux • MacOS