Version 1.5.0
was released on 12 October 2020.
This release includes the following (notable) new features, improvements and bug fixes:
- Added Portuguese, Lithuanian and Italian localizations
- Added search feature, to find text in publication documents (accessible paginated list of results + visual highlights with sequential navigation)
- Added support for Divina "visual narrative" publications (Readium Web Pub Manifest)
- Added preliminary integration of the PDF.js rendering engine, includes support for LCP DRM protection (Readium Web Pub Manifest packaging)
- Added support for RTL Right-To-Left in TOC Table Of Contents, Landmarks, etc. navigation panels
- Fixed support for secondary monitor (application windows on dynamic display coordinates / dimensions)
- Fixed command line and file explorer integration (opening of reader windows)
- Tweaked HTTP timeout value (request/response cycles for OPDS publication downloads, W3C Web Publications / AudioBooks and Readium Web Pub Manifest retriever / packager, etc.)
- Improved display of OPDS indirect acquisitions (now indicate file type in import button)
- Fixed issue where session settings section was not refreshing when language was changed
- Application runtime upgraded to Electron 9 (and corresponding NodeJS update too)
(previous v1.4.0 changelog)
Git commit diff since v1.4.0
:
https://github.com/edrlab/thorium-reader/compare/v1.4.0...v1.5.0
=> 55 GitHub Pull Requests or high-level Git commits.
- (_) chore(release): version bump back for CI builds
- (_) fix: added XML in addition to XHTML and HTML in search document filters (EPUB2 and EPUB3 support) [skip ci]
- (_) fix: CSS top toolbar in fullscreen for publications without audio playback UI buttons [skip ci]
- (_) fix: text search limited to (X)HTML documents (ignore PDF, image, etc. spine items) [skip ci]
- (_) fix(release): PDF.js shipped in pdf-extract lib is processed by WebPack and Web Worker is extracted as additional main.js file in electron-builder bundle [skip ci]
- (_) fix: typo in accessible label for search matches [skip ci]
- (_) fix: regression in PROD builds (DEV okay) due to node-fetch AbortSignal symbol name mangled by WebPack default minifier / code bundle compressor [skip ci]
- (_) chore(release): v1.5 bump [skip ci]
- (_) chore(doc): updated list of supported GUI languages (localizations) in English readme [skip ci]
- (_) chore(release): v1.5 changelog [skip ci]
- (_) chore(NPM): package updates
- (_) feat: in-publication text search, accessible paginated list of results + visual highlights with sequential navigation (PR #1086 Fixes #173)
- (_) fix: Divina previous/left arrow keys hijacking (built-in pagination user interactions, keyboard, image touch, etc.)
- (_) fix: secondary monitor / dynamic display for window positioning (PR #1202 Fixes #1201)
- (_) fix: reader window launch without library (PR #1203 Fixes #1123)
- (_) RTL TOC and Landmarks (PR #1205 Fixes #987)
- (_) chore(NPM): minor package update
- (_) chore(NPM): package updates, some development tools breaking changes
- (_) fix: Divina player upgrade (PR #1204)
- (_) feat: preliminary support for PDF documents, including LCP DRM (PR #1188)
- (_) upgrade npm divina-player-js
- (_) downgrade npm divina-player-js
- (_) update: npm divina github repository
- (_) fix(HTTP): timeout value for request/response cycles
- (_) fix(OPDS): fix for empty string items, like tags
- (_) fix(OPDS): indirect acquisitions now indicate file type in import button, also added button CSS where missing.
- (_) fix(OPDS): recent regression introduced by https://github.com/edrlab/thorium-reader/pull/1168/files#diff-a181f6300ec37516c6ea06f2c3757ded (LCP passphrase retrieval property)
- (_) chore(l10n): removed unused files (Markdown docs placeholder, missing languages)
- (_) fix(l10n): Italian localization (PR #1195 follows PR #1187 Fixes #1179 )
- (_) fix(l10n): case-sensitive file systems, locales of "about" Markdown file (Fixes #1184 )
- (_) fix(l10n): Portuguese language switch (Fixes #1184 )
- (_) fix(l10n): session settings section was not refreshing when language changed (Fixes #1172 )
- (_) chore(NPM): package updates and lockfile refresh
- (_) fix: downloader "end" event (PR #1183)
- (_) chore(NPM): package updates (minor)
- (_) chore(NPM): package updates, lock file refresh
- (_) fix: run editor-config on ts and js files only
- (_) fix: languages in readme.md
- (_) fix: packager/fetcher now handles RWPM (Readium Web Pub Manifest) as well as W3C publications (PR #1177 follows PR #1168)
- (_) fix: remove the development feature "import link" from the settings UI (PR #1175 follows PR #1168)
- (_) chore(NPM): minor package updates (not major PostCSS semver increment, as plugins are not ready yet).
- (_) chore(NPM): package updates and lock file refresh
- (_) feat: improved support for W3C audiobooks, with downloader + packager, also fixes CLI bug (PR #1168 Fixes #1174)
- (_) feat: support for Divina visual narrative publications (PR #1128)
- (_) chore(NPM): package dependency updates (some major, due to deprecation of end-of-life NodeJS versions)
- (_) chore(l10n): updated package.json NPM scripts for i18next normalization [skip ci]
- (_) feat(l10n): Lithuanian translation (PR #1153)
- (_) feat(l10n): Portuguese UI translation (PR #1141)
- (_) fix: i18n error at Thorium launch after app update (PR #1165)
- (_) chore(NPM): package updates
- (_) chore(NPM): package updates
- (_) chore(NPM): package dependency updates
- (_) chore(NPM): package updates
- (_) chore(NPM): package updates, including Electron 9
- (_) chore(dev): version bump post-release 1.4
Developer Notes:
- The standard-changelog utility (
npx standard-changelog --first-release
) somehow only generates a limited number of commits, so we use a one-liner command line / shell script instead: git --no-pager log --decorate=short --pretty=oneline v1.4.0...v1.5.0 | cut -d " " -f 1- | sed -En '/^([0-9a-zA-Z]+)[[:space:]]([^:]+):(.+)$/!p;s//\1 __\2:__\3/p' | sed -En 's/^(.+)$/* \1/p' | sed -En '/PR[[:space:]]*#([0-9]+)/!p;s//PR [#\1](https:\/\/github.com\/edrlab\/thorium-reader\/pull\/\1)/gp' | sed -En '/\(#([0-9]+)/!p;s//(PR [#\1](https:\/\/github.com\/edrlab\/thorium-reader\/pull\/\1)/gp' | sed -En '/(Fixes|See|Fix|Fixed)[[:space:]]*#([0-9]+)/!p;s//\1 [#\2](https:\/\/github.com\/edrlab\/thorium-reader\/issues\/\2)/gp' | sed -En '/^.[[:space:]]([0-9a-zA-Z]+)[[:space:]]/!p;s//* [(_)](https:\/\/github.com\/edrlab\/thorium-reader\/commit\/\1) /p' | sed -En '/[[:space:]]#([0-9]+)/!p;s// [#\1](https:\/\/github.com\/edrlab\/thorium-reader\/issues\/\1)/gp'
- ...append
| pbcopy
on MacOS to copy the result into the clipboard. - ...append
| wc -l
to verify that the result actually matches the number of Git commits.