Skip to content

Does epubcheck produce an incomplete list of files for the same error? #1666

Closed

Description

@jenstroeger

Hello,

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?

Thanks,
Jens

Activity

  1. rdeltour commented on Jun 26, 2026

    @rdeltour
    Member

    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!

  2. jenstroeger commented on Jun 26, 2026

    @jenstroeger
    Author

    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 🤔

  3. jenstroeger commented on Jun 27, 2026

    @jenstroeger
    Author

    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

    1. I came across an EPUB with 14444 additional locations… ↩

  4. self-assigned this
    on Aug 28, 2026
  5. added
    type: improvementThe issue suggests an improvement of an existing feature
    status: needs reviewNeeds to be reviewed by a team member before further processing
    on Aug 28, 2026
  6. added
    type: duplicateThe issue duplicates an existing issue
    and removed
    type: improvementThe issue suggests an improvement of an existing feature
    status: needs reviewNeeds to be reviewed by a team member before further processing
    on Sep 10, 2026
  7. added
    status: in progressThe issue is being implemented by the development team
    status: has PRThe issue is being processed in a pull request
    and removed
    status: in progressThe issue is being implemented by the development team
    on Sep 11, 2026
  8. added a commit that references this issue on Sep 15, 2026
    637cc69
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

status: has PRThe issue is being processed in a pull requesttype: duplicateThe issue duplicates an existing issue

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

    ⌂ 换网址