Using lyxhtml_validity.py

Scott Kostyshak skostysh at lyx.org
Sun Jan 8 15:32:25 UTC 2023


On Sun, Jan 08, 2023 at 04:22:09PM +0100, Kornel Benko wrote:
> Am Sun, 8 Jan 2023 10:11:37 -0500
> schrieb Scott Kostyshak <skostysh at lyx.org>:
> 
> > On Sun, Jan 08, 2023 at 03:50:07PM +0100, Kornel Benko wrote:
> > > Am Sun, 8 Jan 2023 09:37:03 -0500
> > > schrieb Scott Kostyshak <skostysh at lyx.org>:
> > >   
> > > > On Sun, Jan 08, 2023 at 09:30:43AM +0100, Kornel Benko wrote:  
> > > > > Am Sun, 8 Jan 2023 00:59:34 +0100
> > > > > schrieb Thibaut Cuvelier <dourouc05 at gmail.com>:
> > > > >     
> > > > > > On Sat, 7 Jan 2023 at 17:10, Kornel Benko <kornel at lyx.org> wrote:
> > > > > >     
> > > > > > > Am Sat, 7 Jan 2023 16:26:03 +0100
> > > > > > > schrieb Thibaut Cuvelier <dourouc05 at gmail.com>:
> > > > > > >    
> > > > > > > > > After your recent changes, the number of errors decreased :)
> > > > > > > > >
> > > > > > > > > I got now (for Tufte_Book.xhtml)
> > > > > > > > >         Error: Bad value "content-type" for attribute "http-equiv" on    
> > > > > > > element "meta".    
> > > > > > > > >         From line 5, column 1 to line 5, column 68 in resource
> > > > > > > > >    
> > > > > > > file:/usr9/BUILD/Mint21/BuildLyxGitQt5.15.3local-gcc12.1.0/autotests/out-home/AbC_wGZLha/examples/es/Books/Tufte_Book.xhtml
> > > > > > >    
> > > > > > > > >         Document checking completed.    
> > > > > > > > >         > Found 3 validation errors!    
> > > > > > > > >    
> > > > > > > > This one should be fixed at a5c6215e. I still get two warnings with the    
> > > > > > > latest output,    
> > > > > > > > but they cannot be fixed unless we decide we do not generate XML-valid    
> > > > > > > HTML at all    
> > > > > > > > (which might be very disruptive for our users).
> > > > > > > >    
> > > > > > >
> > > > > > > Not here. The error is the same as before.
> > > > > > >         Error: Bad value "content-type" for attribute "http-equiv" on
> > > > > > > element "meta".
> > > > > > > Also the test export/mathmacros/testcases_basic_xhtml produces  plenty of
> > > > > > >         Error: Text not allowed in element "mstyle" in this context
> > > > > > >    
> > > > > > 
> > > > > > That's strange, because all 178 documents (including Tufte_book, but not
> > > > > > mathmacros/testcases_basic) do not produce a single validation error on my
> > > > > > machine: generating the XHTML for Tufte_Book and validating it manually (
> > > > > > https://validator.nu/, it's advertised as the same software) doesn't yield
> > > > > > any error. However, testcases_basic is not included in the list of tests I
> > > > > > run. I'm attaching the log to check for differences.
> > > > > > 
> > > > > > For export/mathmacros/testcases_basic_xhtml, it's a bug in the MathML
> > > > > > implementation, the mstyle tag should be an mtext (according to what the
> > > > > > spec and MathType say: mstyle was just for text, but is not really useful
> > > > > > anymore; mtext can contain raw text). It should be fixed at edcaad24; I'm
> > > > > > working on a related validation error (triggered in the same document with
> > > > > > this patch).    
> > > > > 
> > > > > There is no attachment in your mail.
> > > > > 
> > > > > Running the full ctest on the xhtml
> > > > >  $ ctest -R '_xhtml$' -j24
> > > > > gives here
> > > > >  0% tests passed, 421 tests failed out of 421
> > > > > .
> > > > > Moreover, there are now 16 assertions while exporting.
> > > > > autotests/export/docbook/Linguistics.lyx
> > > > > doc/UserGuide.lyx
> > > > > doc/ar/UserGuide.lyx
> > > > > doc/ja/UserGuide.lyx
> > > > > doc/ru/UserGuide.lyx
> > > > > examples/Modules/Linguistics.lyx
> > > > > examples/de/Modules/Linguistics.lyx
> > > > > examples/es/Modules/Linguistics.lyx
> > > > > examples/fr/Modules/Linguistics.lyx
> > > > > examples/ja/Modules/Linguistics.lyx
> > > > > doc/Math.lyx
> > > > > doc/es/Math.lyx
> > > > > doc/de/Math.lyx
> > > > > doc/fr/Math.lyx
> > > > > doc/ru/Math.lyx
> > > > > doc/ja/Math.lyx
> > > > > 
> > > > > The assertion in Linguistics.lyx is triggered only if lyx is compiled with for
> > > > > debugging. "support/lassert.cpp (52): ASSERTION ucs4[i] < 0x80 VIOLATED IN
> > > > >  /usr2/src/lyx/lyx-git/src/support/docstring.cpp:65
> > > > > 
> > > > > Should I provide you with my ctest-changes? I feel unconfortable to commit
> > > > > something producing errors while running ctest. OTOH, errors should be corrected.
> > > > > 
> > > > > Scott, what do you think?    
> > > > 
> > > > Thanks to you and Thibaut for working through this. I don't think we
> > > > should commit until the test results are clean.
> > > > 
> > > > If it would help, I'm happy to test a patch and report back the results
> > > > on my side.
> > > > 
> > > > Scott  
> > > 
> > > OK, here they are.
> > > 
> > > One patch and a new file (development/autotests/simplehtml_validity.py)  
> > 
> > All xhtml tests fail for me with the patch and file. I get:
> > 
> > 
> > LyX.cpp (444): Deleting tmp dir /tmp/lyx_tmpdir.WugyQcqXZywf
> > -- Expected result file
> > "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_UxUzu8/doc/Intro.xhtml"
> > exists -- Calling /usr/bin/python3.10
> > "/home/scott/lyxbuilds/master-master/repo/development/autotests/simplehtml_validity.py"
> > "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_UxUzu8/doc/Intro.xhtml"
> > -- Calling: /usr/bin/xmllint --loaddtd --noout
> > "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_UxUzu8/doc/Intro.xhtml"
> > -- Check the output: /usr/bin/perl
> > /home/scott/lyxbuilds/master-master/repo/development/autotests/examineXmllintOutput.pl
> > -- Msg Summary: -- 	OK: Exporting
> > "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_UxUzu8/doc/Intro.lyx"
> > to format xhtml -- 	Error: 1 validating
> 
> This is suspicious. I get here
> 	Error: 254 validating
> Maybe you forgot to install html5validator?
> 	$ pip3 install html5validator>=0.4.2
> 
> > "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_UxUzu8/doc/Intro.xhtml.validate_out"
> > -- 	OK: Checking
> > "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_UxUzu8/doc/Intro.xhtml"
> > with /usr/bin/xmllint -- 	OK: Parse messages of /usr/bin/xmllint for errors --
> > Exporting doc/Intro.lyx to xhtml CMake Error at
> > /home/scott/lyxbuilds/master-master/repo/development/autotests/export.cmake:369
> > (message): Export failed

Ah yes you are right. Now I get:


-- Expected result file "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.xhtml" exists
-- Calling /usr/bin/python3.10 "/home/scott/lyxbuilds/master-master/repo/development/autotests/simplehtml_validity.py" "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.xhtml"
-- Error: Bad value "content-type" for attribute "http-equiv" on element "meta".
From line 5, column 1; to line 5, column 69 in resource file:/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.xhtml
Error: The "align" attribute on the "td" element is obsolete. Use CSS instead.
From line 316, column 1; to line 316, column 103 in resource file:/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.xhtml
Error: The "valign" attribute on the "td" element is obsolete. Use CSS instead.
... [cut many messages]
Error: The "valign" attribute on the "td" element is obsolete. Use CSS instead.
From line 434, column 1; to line 434, column 102 in resource file:/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.xhtml
Document checking completed.
> Found 163 validation errors!

-- Calling: /usr/bin/xmllint --loaddtd --noout "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.xhtml"
-- Check the output: /usr/bin/perl /home/scott/lyxbuilds/master-master/repo/development/autotests/examineXmllintOutput.pl
-- Msg Summary:
-- 	OK: Exporting "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.lyx" to format xhtml
-- 	Error: 254 validating "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.xhtml.validate_out"
-- 	Error: Non empty output "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.xhtml.validate_out" with "symplehtml_validity.py"
-- 	OK: Checking "/home/scott/lyxbuilds/master-master/CMakeBuild/autotests/out-home/AbC_GWnnqL/doc/Intro.xhtml" with /usr/bin/xmllint
-- 	OK: Parse messages of /usr/bin/xmllint for errors
-- Exporting doc/Intro.lyx to xhtml
CMake Error at /home/scott/lyxbuilds/master-master/repo/development/autotests/export.cmake:369 (message):
  Export failed

Scott
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.lyx.org/pipermail/lyx-devel/attachments/20230108/a61ed496/attachment-0001.asc>


More information about the lyx-devel mailing list