You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Does epubcheck produce an incomplete list of files for the same error? #1666
As I’m noodling through a few old and invalid EPUB2 files I noticed that epubcheck does not report errors (using --json) across all files. For example
Error while parsing file: element "col" not allowed here; expected the element end-tag or element "caption", "colgroup", "script", "tbody", "template", "tfoot", "thead" or "tr"
is reported for OEBPS/intro.xhtml and OEBPS/chap2.xhtml. After fixing these two files I expected the error gone, but on its next run epubcheck reports that same error for OEBPS/chap3.xhtml.
At first I thought that there might be a message limit per error, but I didn’t find that documented.
So… what’s going on here? Can somebody please shed some light on this behavior?
At first I thought that there might be a message limit per error, but I didn’t find that documented.
That might be the case; I know that there is a global limit, but there may be a per-error limit too (I did not personally implement that feature so I don't remember.). I'll have a look!
That might be the case; I know that there is a global limit, but there may be a per-error limit too (I did not personally implement that feature so I don't remember.). I'll have a look!
Thank you, @rdeltour, that’d be great! Ideally I’d like that limit off but perhaps it makes sense for users to control it via the command line 🤔
with 25 "locations" objects, plus 157 "additionalLocations"1 makes a total of 182 errors… Which is more or less the number of HTML files in the EPUB.
Definitely looks like there’s a cap on verbose reporting. It’d be great to have a command line option to verbosely report everything, i.e. ensure that "additionalLocations" is always 0.
Footnotes
I came across an EPUB with 14444 additional locations… ↩
Activity
rdeltour commentedon Jun 26, 2026
That might be the case; I know that there is a global limit, but there may be a per-error limit too (I did not personally implement that feature so I don't remember.). I'll have a look!
jenstroeger commentedon Jun 26, 2026
Thank you, @rdeltour, that’d be great! Ideally I’d like that limit off but perhaps it makes sense for users to control it via the command line 🤔
jenstroeger commentedon Jun 27, 2026
Oh… I just noticed in another EPUB:
{ "ID" : "HTM-004", "severity" : "ERROR", "message" : "Irregular DOCTYPE: found \"-//W3C//DTD XHTML 1.1//EN\", expected \"<!DOCTYPE html>\".", "additionalLocations" : 157, "locations" : [ ... ], "suggestion" : null }with 25
"locations"objects, plus 157"additionalLocations"1 makes a total of 182 errors… Which is more or less the number of HTML files in the EPUB.Definitely looks like there’s a cap on verbose reporting. It’d be great to have a command line option to verbosely report everything, i.e. ensure that
"additionalLocations"is always 0.Footnotes
I came across an EPUB with 14444 additional locations… ↩
feat(CLI): new option `--maxOfEachMessage NUM|unlimited`