epublift 3.3.0 (command line) and 1.24.0 (web page) are out, and
https://epublift.itpax.net is already running them. Three changes are worth knowing about.
Metadata edits on EPUB 2 books are fixed
The metadata editor writes its result to a new file (book_meta.epub, or a download on the web page), so the book you started from was never touched. The new file, though, was worse than it should have been when the book was EPUB 2. The editor wrote EPUB 3 markup into it (refines and property metas, dcterms:modified), which EPUB 2 does not allow, so every edited EPUB 2 book failed validation with RSC-005. The web form sends every field when you save, so there it happened on every save. It has been like this since the metadata editor first shipped.
EPUB 2 books are now written the EPUB 2 way: opf:role and opf:file-as on the author, opf:scheme="ISBN" on the ISBN, and calibre:series for the series. If you kept a copy made with the editor, run it through Validate or epubcheck. Making the edit again from your original gives a clean file.
Saving the form also no longer loses what the form does not show: a second language, or an author's sort name and role (a translator listed as a creator now stays a translator). It no longer adds a second copy of an ISBN the book already has. EPUB 2 has no subtitle field, so for those books the subtitle box is switched off instead of writing something that would not be valid.
You can change the cover
Someone asked for this on GitHub. The Metadata tab has a new Cover section with three choices: keep the current cover, use the one an ISBN lookup found on Open Library, or upload your own JPEG or PNG. The Open Library cover is shown next to the book's own with both sizes, and you get a warning when it is smaller, which it often is. On the command line it is
epublift meta set --cover cover.jpg book.epub.
The image goes in exactly as you give it. It is not converted to WebP, for the reason this thread already knows: Kobo shows no WebP cover in a plain .epub. If you want it smaller, run Optimize afterwards. Every page that shows the old cover follows the new one, including calibre's SVG cover pages, which take the new image's size so it is not stretched. A book with no cover gets one, with a cover page at the start. If the result would have more validation errors than the book you started from, nothing is written.
On a Kobo, delete the old copy from the device before copying the new one, or the library keeps showing the old cover.
Subjects from Open Library are now your choice
Open Library collects subject headings from every library that catalogued a book, in that library's language, without saying which language they are in. An English programming book came back with German and Dutch subjects next to the English ones, and I cannot sort short headings by language reliably ("Hardware" is German too). So the web page now shows the subjects it found as tick boxes, none ticked. On the command line,
meta enrich lists them and only writes them with
--include-subjects. If you have a script that relied on enrich writing subjects, add that flag.
Validate and Repair now run epubveri 0.24.0 and epubsana 0.25.0, the same versions as in their own threads.
The conversion problems I mentioned last time are not part of this release. I am still working on those.
Full release notes:
cli-v3.3.0 and
web-v1.24.0. If an edit or a new cover comes out wrong on one of your books, please tell me here. Your original is untouched, and Validate will show what changed.