Package: xmlstarlet Version: 1.1.0-1 Severity: important Affects: src:fusionforge
Hi, I’ve found two regressions in xmlstarlet val. Let me show: SID $ xmlstarlet val -d /usr/share/xml/xhtml/schema/dtd/1.0/xhtml1-strict.dtd xinvalid.htm xinvalid.htm - invalid LENNY # xmlstarlet val -d /usr/share/xml/xhtml/schema/dtd/1.0/xhtml1-strict.dtd xinvalid.htm xinvalid.htm:7: parser error : Opening and ending tag mismatch: p line 7 and div <p> </div> ^ xinvalid.htm - invalid Errorlevel is set to 1 correctly in both cases, but the diagnostics (which I’m using in FusionForge) are missing. I found out that there’s a ‘-e’ option which is supposed to show errors. 1|SID $ xmlstarlet val -e -d /usr/share/xml/xhtml/schema/dtd/1.0/xhtml1-strict.dtd xinvalid.htm xinvalid.htm:7: Entity 'nbsp' not defined xinvalid.htm:7: Opening and ending tag mismatch: p line 7 and div xinvalid.htm - invalid 1|LENNY # xmlstarlet val -e -d /usr/share/xml/xhtml/schema/dtd/1.0/xhtml1-strict.dtd xinvalid.htm xinvalid.htm:7: parser error : Opening and ending tag mismatch: p line 7 and div <p> </div> ^ xinvalid.htm - invalid It’s still not as verbose as I would have liked. But what’s that? Now let’s try with a valid XML file: 1|SID $ xmlstarlet val -d /usr/share/xml/xhtml/schema/dtd/1.0/xhtml1-strict.dtd xvalid.htm xvalid.htm - valid SID $ xmlstarlet val -e -d /usr/share/xml/xhtml/schema/dtd/1.0/xhtml1-strict.dtd xvalid.htm xvalid.htm:7: Entity 'nbsp' not defined xvalid.htm - valid SID $ dpkg -l xmlstarlet Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Description +++-=====================-=====================-========================================================== ii xmlstarlet 1.1.0-1 command line XML toolkit The errorlevel is correctly set to 0, but the nbsp problem is still there. For the record, I could *not* get the sid version of xmlstarlet to accept the entity, not even when embedding them (all three from /usr/share/xml/entities/xhtml/) into the DTD. 1|LENNY # xmlstarlet val -d /usr/share/xml/xhtml/schema/dtd/1.0/xhtml1-strict.dtd xvalid.htm xvalid.htm - valid LENNY # xmlstarlet val -e -d /usr/share/xml/xhtml/schema/dtd/1.0/xhtml1-strict.dtd xvalid.htm xvalid.htm - valid LENNY # dpkg -l xmlstarlet Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-=====================-=====================-========================================================== ii xmlstarlet 1.0.1-2 command line XML toolkit This version has not the same problem. I consider this a serious regression in the usability of xmlstarlet as an in-band XML/HTML validator. The entity problem is even worse in the case of actually broken files, when you have to scroll over several hundred of them to get to the error message. (Personally I’m against but I have to deal with legacy codebase.) -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: i386 (i686) Kernel: Linux 2.6.38-2-686 (SMP w/1 CPU core) Locale: LANG=C, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/mksh Versions of packages xmlstarlet depends on: ii libc6 2.13-4 Embedded GNU C Library: Shared lib ii libxml2 2.7.8.dfsg-2+b1 GNOME XML library ii libxslt1.1 1.1.26-7+b1 XSLT 1.0 processing library - runt xmlstarlet recommends no packages. xmlstarlet suggests no packages. -- no debconf informationTitle: blub