TeXworks / texworks

Main codebase for TeXworks, a simple interface for working with TeX documents
https://tug.org/texworks/
GNU General Public License v2.0
692 stars 127 forks source link

test_poppler-qt6 (Failed) on Fedora 40 #1035

Closed topazus closed 9 months ago

topazus commented 9 months ago

Bug description:

I try to run the ctests on Fedora koji to build texworks with qt6.

Here are the ctest results:

``` + xvfb-run -a bash -c ' /usr/bin/ctest --test-dir redhat-linux-build --output-on-failure --force-new-ctest-process -j6 ' Internal ctest changing into directory: /builddir/build/BUILD/texworks-release-0.6.8/redhat-linux-build Test project /builddir/build/BUILD/texworks-release-0.6.8/redhat-linux-build Start 1: test_poppler-qt6 Start 2: test_BibTeXFile Start 3: test_Scripting Start 4: test_LuaScripting Start 5: test_UI Start 6: test_Utils 1/7 Test #4: test_LuaScripting ................ Passed 0.07 sec Start 7: test_Document 2/7 Test #2: test_BibTeXFile .................. Passed 0.08 sec 3/7 Test #5: test_UI .......................... Passed 0.08 sec 4/7 Test #3: test_Scripting ................... Passed 0.09 sec 5/7 Test #7: test_Document .................... Passed 0.20 sec 6/7 Test #6: test_Utils ....................... Passed 0.40 sec 7/7 Test #1: test_poppler-qt6 .................***Failed 2.58 sec ********* Start testing of UnitTest::TestQtPDF ********* Config: Using QtTest library 6.6.1, Qt 6.6.1 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 13.2.1 20231110 (Red Hat 13.2.1-5)), fedora 40 PASS : UnitTest::TestQtPDF::initTestCase() PASS : UnitTest::TestQtPDF::backendInterface() PASS : UnitTest::TestQtPDF::abstractBaseClasses() QWARN : UnitTest::TestQtPDF::loadDocs() QFSFileEngine::open: No file name specified QWARN : UnitTest::TestQtPDF::loadDocs() QFSFileEngine::open: No file name specified PASS : UnitTest::TestQtPDF::loadDocs() RESULT : UnitTest::TestQtPDF::loadDocs(): 304 msecs per iteration (total: 304, iterations: 1) PASS : UnitTest::TestQtPDF::parsePDFDate(empty) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyy) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymm) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmdd) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmddHH) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmddHHMM) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmddHHMMSS) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmddHHMMSSZ) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmddHHMMSS+07'30) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmddHHMMSS-08'00) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmddHHMMSS;08'00) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmddHHMMSS-0800) PASS : UnitTest::TestQtPDF::parsePDFDate(yyyymmddHHMMSS-0a'00) PASS : UnitTest::TestQtPDF::isValid(invalid) PASS : UnitTest::TestQtPDF::isValid(transitions) PASS : UnitTest::TestQtPDF::isValid(pgfmanual) PASS : UnitTest::TestQtPDF::isValid(base14-fonts) PASS : UnitTest::TestQtPDF::isValid(base14-locked) PASS : UnitTest::TestQtPDF::isValid(metadata) PASS : UnitTest::TestQtPDF::isValid(page-rotation) PASS : UnitTest::TestQtPDF::isLocked(invalid) PASS : UnitTest::TestQtPDF::isLocked(transitions) PASS : UnitTest::TestQtPDF::isLocked(pgfmanual) PASS : UnitTest::TestQtPDF::isLocked(base14-fonts) PASS : UnitTest::TestQtPDF::isLocked(base14-locked) PASS : UnitTest::TestQtPDF::isLocked(metadata) PASS : UnitTest::TestQtPDF::isLocked(page-rotation) PASS : UnitTest::TestQtPDF::unlock(unlocked) PASS : UnitTest::TestQtPDF::unlock(wrong-pwd) PASS : UnitTest::TestQtPDF::unlock(user-pwd) PASS : UnitTest::TestQtPDF::unlock(owner-pwd) PASS : UnitTest::TestQtPDF::numPages(invalid) PASS : UnitTest::TestQtPDF::numPages(transitions) PASS : UnitTest::TestQtPDF::numPages(pgfmanual) PASS : UnitTest::TestQtPDF::numPages(base14-fonts) XFAIL : UnitTest::TestQtPDF::numPages(base14-locked) poppler-qt doesn't report page numbers for locked documents Loc: [/builddir/build/BUILD/texworks-release-0.6.8/modules/QtPDF/unit-tests/TestQtPDF.cpp(391)] PASS : UnitTest::TestQtPDF::numPages(base14-locked) PASS : UnitTest::TestQtPDF::numPages(metadata) PASS : UnitTest::TestQtPDF::numPages(page-rotation) PASS : UnitTest::TestQtPDF::fileName(invalid) PASS : UnitTest::TestQtPDF::fileName(transitions) PASS : UnitTest::TestQtPDF::fileName(pgfmanual) PASS : UnitTest::TestQtPDF::fileName(base14-fonts) PASS : UnitTest::TestQtPDF::fileName(base14-locked) PASS : UnitTest::TestQtPDF::fileName(metadata) PASS : UnitTest::TestQtPDF::fileName(page-rotation) PASS : UnitTest::TestQtPDF::page(invalid) PASS : UnitTest::TestQtPDF::page(transitions) PASS : UnitTest::TestQtPDF::page(pgfmanual) PASS : UnitTest::TestQtPDF::page(base14-fonts) PASS : UnitTest::TestQtPDF::page(base14-locked) PASS : UnitTest::TestQtPDF::page(metadata) PASS : UnitTest::TestQtPDF::page(page-rotation) PASS : UnitTest::TestQtPDF::destination(default) PASS : UnitTest::TestQtPDF::destination(named) PASS : UnitTest::TestQtPDF::destination(reset) PASS : UnitTest::TestQtPDF::destination(XYZ) PASS : UnitTest::TestQtPDF::destination(Fit) PASS : UnitTest::TestQtPDF::destination(FitB) PASS : UnitTest::TestQtPDF::destination(FitH) PASS : UnitTest::TestQtPDF::destination(FitBH) PASS : UnitTest::TestQtPDF::destination(FitV) PASS : UnitTest::TestQtPDF::destination(FitBV) PASS : UnitTest::TestQtPDF::destination(FitR) PASS : UnitTest::TestQtPDF::destination(XYZ invalid page) PASS : UnitTest::TestQtPDF::destination(Fit invalid page) PASS : UnitTest::TestQtPDF::destination(FitB invalid page) PASS : UnitTest::TestQtPDF::destination(FitH invalid page) PASS : UnitTest::TestQtPDF::destination(FitBH invalid page) PASS : UnitTest::TestQtPDF::destination(FitV invalid page) PASS : UnitTest::TestQtPDF::destination(FitBV invalid page) PASS : UnitTest::TestQtPDF::destination(FitR invalid page) PASS : UnitTest::TestQtPDF::destinationComparison() PASS : UnitTest::TestQtPDF::PDFUriAction() PASS : UnitTest::TestQtPDF::PDFGotoAction() PASS : UnitTest::TestQtPDF::PDFLaunchAction() PASS : UnitTest::TestQtPDF::actionComparison() QWARN : UnitTest::TestQtPDF::resolveDestination() Duplicate data tag "annotations" - please rename. QWARN : UnitTest::TestQtPDF::resolveDestination() Duplicate data tag "annotations" - please rename. PASS : UnitTest::TestQtPDF::resolveDestination(annotations) PASS : UnitTest::TestQtPDF::resolveDestination(annotations) PASS : UnitTest::TestQtPDF::resolveDestination(annotations) PASS : UnitTest::TestQtPDF::metaDataTitle(invalid) PASS : UnitTest::TestQtPDF::metaDataTitle(transitions) PASS : UnitTest::TestQtPDF::metaDataTitle(pgfmanual) PASS : UnitTest::TestQtPDF::metaDataTitle(base14-fonts) PASS : UnitTest::TestQtPDF::metaDataTitle(base14-locked) PASS : UnitTest::TestQtPDF::metaDataTitle(metadata) PASS : UnitTest::TestQtPDF::metaDataAuthor(invalid) PASS : UnitTest::TestQtPDF::metaDataAuthor(transitions) PASS : UnitTest::TestQtPDF::metaDataAuthor(pgfmanual) PASS : UnitTest::TestQtPDF::metaDataAuthor(base14-fonts) PASS : UnitTest::TestQtPDF::metaDataAuthor(base14-locked) PASS : UnitTest::TestQtPDF::metaDataAuthor(metadata) PASS : UnitTest::TestQtPDF::metaDataSubject(invalid) PASS : UnitTest::TestQtPDF::metaDataSubject(transitions) PASS : UnitTest::TestQtPDF::metaDataSubject(pgfmanual) PASS : UnitTest::TestQtPDF::metaDataSubject(base14-fonts) PASS : UnitTest::TestQtPDF::metaDataSubject(base14-locked) PASS : UnitTest::TestQtPDF::metaDataSubject(metadata) PASS : UnitTest::TestQtPDF::metaDataKeywords(invalid) PASS : UnitTest::TestQtPDF::metaDataKeywords(transitions) PASS : UnitTest::TestQtPDF::metaDataKeywords(pgfmanual) PASS : UnitTest::TestQtPDF::metaDataKeywords(base14-fonts) PASS : UnitTest::TestQtPDF::metaDataKeywords(base14-locked) PASS : UnitTest::TestQtPDF::metaDataKeywords(metadata) PASS : UnitTest::TestQtPDF::metaDataCreator(invalid) PASS : UnitTest::TestQtPDF::metaDataCreator(transitions) PASS : UnitTest::TestQtPDF::metaDataCreator(pgfmanual) PASS : UnitTest::TestQtPDF::metaDataCreator(base14-fonts) PASS : UnitTest::TestQtPDF::metaDataCreator(base14-locked) PASS : UnitTest::TestQtPDF::metaDataCreator(metadata) PASS : UnitTest::TestQtPDF::metaDataProducer(invalid) PASS : UnitTest::TestQtPDF::metaDataProducer(transitions) PASS : UnitTest::TestQtPDF::metaDataProducer(pgfmanual) PASS : UnitTest::TestQtPDF::metaDataProducer(base14-fonts) PASS : UnitTest::TestQtPDF::metaDataProducer(base14-locked) PASS : UnitTest::TestQtPDF::metaDataProducer(metadata) PASS : UnitTest::TestQtPDF::metaDataCreationDate(invalid) PASS : UnitTest::TestQtPDF::metaDataCreationDate(transitions) PASS : UnitTest::TestQtPDF::metaDataCreationDate(pgfmanual) PASS : UnitTest::TestQtPDF::metaDataCreationDate(base14-fonts) PASS : UnitTest::TestQtPDF::metaDataCreationDate(base14-locked) PASS : UnitTest::TestQtPDF::metaDataCreationDate(metadata) PASS : UnitTest::TestQtPDF::metaDataModDate(invalid) PASS : UnitTest::TestQtPDF::metaDataModDate(transitions) PASS : UnitTest::TestQtPDF::metaDataModDate(pgfmanual) PASS : UnitTest::TestQtPDF::metaDataModDate(base14-fonts) PASS : UnitTest::TestQtPDF::metaDataModDate(base14-locked) PASS : UnitTest::TestQtPDF::metaDataModDate(metadata) PASS : UnitTest::TestQtPDF::metaDataTrapped(invalid) PASS : UnitTest::TestQtPDF::metaDataTrapped(transitions) XFAIL : UnitTest::TestQtPDF::metaDataTrapped(pgfmanual) poppler-qt doesn't handle trapping properly Loc: [/builddir/build/BUILD/texworks-release-0.6.8/modules/QtPDF/unit-tests/TestQtPDF.cpp(1025)] PASS : UnitTest::TestQtPDF::metaDataTrapped(pgfmanual) PASS : UnitTest::TestQtPDF::metaDataTrapped(base14-fonts) PASS : UnitTest::TestQtPDF::metaDataTrapped(base14-locked) PASS : UnitTest::TestQtPDF::metaDataTrapped(metadata) PASS : UnitTest::TestQtPDF::metaDataOther(invalid) PASS : UnitTest::TestQtPDF::metaDataOther(annotations) PASS : UnitTest::TestQtPDF::fileSize(invalid) PASS : UnitTest::TestQtPDF::fileSize(base14-fonts) PASS : UnitTest::TestQtPDF::fileSize(base14-locked) PASS : UnitTest::TestQtPDF::fileSize(pgfmanual) PASS : UnitTest::TestQtPDF::fileSize(annotations) PASS : UnitTest::TestQtPDF::pageSize(invalid) PASS : UnitTest::TestQtPDF::pageSize(base14-fonts) PASS : UnitTest::TestQtPDF::pageSize(base14-locked) PASS : UnitTest::TestQtPDF::pageSize(pgfmanual) PASS : UnitTest::TestQtPDF::pageSize(page-rotation) PASS : UnitTest::TestQtPDF::pageSize(transitions) PASS : UnitTest::TestQtPDF::permissions(invalid) PASS : UnitTest::TestQtPDF::permissions(base14-locked) PASS : UnitTest::TestQtPDF::permissions(base14-fonts) PASS : UnitTest::TestQtPDF::fontDescriptor(default) PASS : UnitTest::TestQtPDF::fontDescriptor(full) PASS : UnitTest::TestQtPDF::fontDescriptor(subset) PASS : UnitTest::TestQtPDF::fontDescriptor(not-subset) PASS : UnitTest::TestQtPDF::fontDescriptorComparison() PASS : UnitTest::TestQtPDF::fonts(invalid) PASS : UnitTest::TestQtPDF::fonts(base14-locked) PASS : UnitTest::TestQtPDF::fonts(base14-fonts) PASS : UnitTest::TestQtPDF::fonts(poppler-data) PASS : UnitTest::TestQtPDF::ToCItem() PASS : UnitTest::TestQtPDF::toc(invalid) PASS : UnitTest::TestQtPDF::toc(annotations) PASS : UnitTest::TestQtPDF::annotationComparison() FAIL! : UnitTest::TestQtPDF::page_renderToImage(base14-fonts-ZapfDingbats) Compared values are not the same Actual (ref.isHomogeneous()) : 0 Expected (render.isHomogeneous()): 1 Loc: [/builddir/build/BUILD/texworks-release-0.6.8/modules/QtPDF/unit-tests/TestQtPDF.cpp(1423)] PASS : UnitTest::TestQtPDF::page_renderToImage(base14-fonts) PASS : UnitTest::TestQtPDF::page_renderToImage(poppler-data) PASS : UnitTest::TestQtPDF::page_renderToImage(jpg) PASS : UnitTest::TestQtPDF::page_loadLinks(base14-fonts p1) PASS : UnitTest::TestQtPDF::page_loadLinks(annotations p1) PASS : UnitTest::TestQtPDF::page_loadAnnotations(base14-fonts p1) PASS : UnitTest::TestQtPDF::page_loadAnnotations(annotations p1) PASS : UnitTest::TestQtPDF::page_boxes(annotations p2) QWARN : UnitTest::TestQtPDF::page_selectedText() Duplicate data tag "base14-fonts p1" - please rename. QWARN : UnitTest::TestQtPDF::page_selectedText() Duplicate data tag "base14-fonts p1" - please rename. PASS : UnitTest::TestQtPDF::page_selectedText(base14-fonts p1) PASS : UnitTest::TestQtPDF::page_selectedText(base14-fonts p1) PASS : UnitTest::TestQtPDF::page_selectedText(base14-fonts p1) PASS : UnitTest::TestQtPDF::page_selectedText(poppler-data p1) QWARN : UnitTest::TestQtPDF::page_search() Duplicate data tag "base14-fonts p1" - please rename. QWARN : UnitTest::TestQtPDF::page_search() Duplicate data tag "base14-fonts p1" - please rename. PASS : UnitTest::TestQtPDF::page_search(base14-fonts p1) PASS : UnitTest::TestQtPDF::page_search(base14-fonts p1) PASS : UnitTest::TestQtPDF::page_search(base14-fonts p1) PASS : UnitTest::TestQtPDF::paperSize(A4 [mm]) PASS : UnitTest::TestQtPDF::paperSize(A4 [mm approx]) PASS : UnitTest::TestQtPDF::paperSize(A4 [mm landscape]) PASS : UnitTest::TestQtPDF::paperSize(A4 [mm landscape approx]) PASS : UnitTest::TestQtPDF::paperSize(not A4) PASS : UnitTest::TestQtPDF::paperSize(A4 [in]) PASS : UnitTest::TestQtPDF::paperSize(A4 [pdf]) PASS : UnitTest::TestQtPDF::paperSize(Letter) PASS : UnitTest::TestQtPDF::transitions(replace) PASS : UnitTest::TestQtPDF::transitions(split-H-in) PASS : UnitTest::TestQtPDF::transitions(split-V-in) PASS : UnitTest::TestQtPDF::transitions(split-H-out) PASS : UnitTest::TestQtPDF::transitions(split-V-out) PASS : UnitTest::TestQtPDF::transitions(blinds-H) PASS : UnitTest::TestQtPDF::transitions(blinds-V) PASS : UnitTest::TestQtPDF::transitions(box-in) PASS : UnitTest::TestQtPDF::transitions(box-out) PASS : UnitTest::TestQtPDF::transitions(wipe-0) PASS : UnitTest::TestQtPDF::transitions(wipe-90) PASS : UnitTest::TestQtPDF::transitions(wipe-180) PASS : UnitTest::TestQtPDF::transitions(wipe-270) PASS : UnitTest::TestQtPDF::transitions(dissolve) PASS : UnitTest::TestQtPDF::transitions(glitter-H) PASS : UnitTest::TestQtPDF::transitions(glitter-V) PASS : UnitTest::TestQtPDF::transitions(glitter-D) PASS : UnitTest::TestQtPDF::transitions(fly-H-in) PASS : UnitTest::TestQtPDF::transitions(fly-V-in) PASS : UnitTest::TestQtPDF::transitions(fly-H-out) PASS : UnitTest::TestQtPDF::transitions(fly-V-out) PASS : UnitTest::TestQtPDF::transitions(push-H) PASS : UnitTest::TestQtPDF::transitions(push-V) PASS : UnitTest::TestQtPDF::transitions(cover-H) PASS : UnitTest::TestQtPDF::transitions(cover-V) PASS : UnitTest::TestQtPDF::transitions(uncover-H) PASS : UnitTest::TestQtPDF::transitions(uncover-V) PASS : UnitTest::TestQtPDF::transitions(fade) PASS : UnitTest::TestQtPDF::pageTile() PASS : UnitTest::TestQtPDF::physicalLength() PASS : UnitTest::TestQtPDF::cleanupTestCase() Totals: 220 passed, 1 failed, 0 skipped, 0 blacklisted, 2507ms ********* Finished testing of UnitTest::TestQtPDF ********* 86% tests passed, 1 tests failed out of 7 Total Test time (real) = 2.58 sec The following tests FAILED: 1 - test_poppler-qt6 (Failed) ```

koji build of texworks: https://koji.fedoraproject.org/koji/taskinfo?taskID=111172131 Detailed log: https://kojipkgs.fedoraproject.org//work/tasks/2212/111172212/build.log

Expected behavior:

all the tests passed.

General information: TeXworks version: 0.6.8 TeXworks obtained from: Github release Operating system: Fedora 40

Additional information:

stloeffler commented 9 months ago

It seems like some base fonts are missing. Maybe installing urw-base35-fonts helps?

Background: the PDF standard requires viewers to provide/handle a bunch of base fonts even if they are not embedded in the PDF file itself. How this is done is platform-dependent. On Linux systems, the easiest way to fulfill this requirement is to have a dependency on a suitable base font package.

topazus commented 9 months ago

Thanks for the quick response. After adding the urw-base35-fonts dependency when building package, the ctest passed, except only on s390x. I saw maybe related issue: https://github.com/TeXworks/texworks/issues/995

build on s390x: https://kojipkgs.fedoraproject.org//work/tasks/2208/111182208/build.log

all build: https://koji.fedoraproject.org/koji/taskinfo?taskID=111182097

stloeffler commented 9 months ago

Sounds good. The remaining issue on s390x is related to #995. I'm therefore closing this issue.