Opened 2 years ago

Closed 2 years ago

#66027 closed defect (fixed)

meson @0.63.3 is missing a test dependency

Reported by: ballapete (Peter "Pete" Dyballa) Owned by: reneeotten (Renee Otten)
Priority: Normal Milestone:
Component: ports Version: 2.7.2
Keywords: monterey Cc: git@…
Port: meson

Description

I am still using Python 3.9. When I run port -vds test meson I get asked:

The following dependencies will be installed: 
 py39-attrs
 py39-iniconfig
 py39-pluggy
 py39-py
 py39-pytest
 py39-setuptools_scm
 py39-typing_extensions
Continue? [Y/n]: DEBUG: Starting logging for py39-attrs @22.1.0_0
DEBUG: macOS 12.6 (darwin/21.6.0) arch i386
DEBUG: MacPorts 2.7.2
DEBUG: Xcode 14.0.1
DEBUG: SDK 12
DEBUG: MACOSX_DEPLOYMENT_TARGET: 12.0

but then the tests fail here:

Got pkgconfig variable host_bins : /opt/local/libexec/qt5/bin
Run-time dependency qt5 (modules: Core) found: YES 5.15.6 (pkg-config)
Program /opt/local/libexec/qt5/bin/moc found: YES 5.15.6 (/opt/local/libexec/qt5/bin/moc)
Program /opt/local/libexec/qt5/bin/uic found: YES 5.15.6 (/opt/local/libexec/qt5/bin/uic)
Program /opt/local/libexec/qt5/bin/rcc found: YES 5.15.6 (/opt/local/libexec/qt5/bin/rcc)
Program /opt/local/libexec/qt5/bin/lrelease found: NO
Program lrelease5 found: NO
Program lrelease-qt5 found: NO
Program lrelease found: NO

test cases/frameworks/4 qt/meson.build:48:4: ERROR: Assert failed: qtmodule.has_tools()

=========================== short test summary info ============================
FAILED run_unittests.py::AllPlatformTests::test_junit_valid_gtest - subproces...
FAILED run_unittests.py::FailureTests::test_extraframework_dependency_method
FAILED run_unittests.py::InternalTests::test_detect_cpu_family - AssertionErr...
FAILED run_unittests.py::LinuxlikeTests::test_qtdependency_pkgconfig_detection
============ 4 failed, 382 passed, 87 skipped in 807.52s (0:13:27) =============
Meson build system 0.63.3 Unit Tests
pytest-xdist not found, tests will not be distributed across CPU cores
Total time: 807.995 seconds
usage: run_project_tests.py [-h]
                            [--backend {ninja,vs,vs2010,vs2012,vs2013,vs2015,vs2017,vs2019,vs2022,xcode}]
                            [-j NUM_WORKERS] [--failfast] [--no-unittests]
                            [--only ONLY [ONLY ...]] [--cross-file CROSS_FILE]
                            [--native-file NATIVE_FILE] [--use-tmpdir]
                            [extra_args ...]
run_project_tests.py: error: unrecognized arguments: -o
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_meson/meson/work/meson-0.63.3" && ./run_tests.py -o addopts='' 
Exit code: 4
Error: Failed to test meson: command execution failed

Obviously py39-pytest-xdist is not listed as test dependency.

Attachments (2)

main.log (548.1 KB) - added by ballapete (Peter "Pete" Dyballa) 2 years ago.
Main.log from x86_64 macOS Monterey, Version 12.6
main.2.log (584.3 KB) - added by ballapete (Peter "Pete" Dyballa) 2 years ago.
Main.log from x86_64 macOS Monterey, Version 12.6, with installed py39-pytest-xdist

Download all attachments as: .zip

Change History (5)

Changed 2 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.log added

Main.log from x86_64 macOS Monterey, Version 12.6

comment:1 Changed 2 years ago by ballapete (Peter "Pete" Dyballa)

Installing py39-pytest-xdist, re-building meson and testing again leads to:

Got pkgconfig variable host_bins : /opt/local/libexec/qt5/bin
Run-time dependency qt5 (modules: Core) found: YES 5.15.6 (pkg-config)
Program /opt/local/libexec/qt5/bin/moc found: YES 5.15.6 (/opt/local/libexec/qt5/bin/moc)
Program /opt/local/libexec/qt5/bin/uic found: YES 5.15.6 (/opt/local/libexec/qt5/bin/uic)
Program /opt/local/libexec/qt5/bin/rcc found: YES 5.15.6 (/opt/local/libexec/qt5/bin/rcc)
Program /opt/local/libexec/qt5/bin/lrelease found: NO
Program lrelease5 found: NO
Program lrelease-qt5 found: NO
Program lrelease found: NO

test cases/frameworks/4 qt/meson.build:48:4: ERROR: Assert failed: qtmodule.has_tools()

=============================================================== short test summary info ===============================================================
FAILED run_unittests.py::AllPlatformTests::test_junit_valid_gtest - subprocess.CalledProcessError: Command '['/opt/local/bin/ninja', '-w', 'dupbuild...
FAILED run_unittests.py::FailureTests::test_extraframework_dependency_method - RuntimeError: Configure failed
FAILED run_unittests.py::InternalTests::test_detect_cpu_family - AssertionError: 'x86_64' != 'x86'
FAILED run_unittests.py::AllPlatformTests::test_summary - AssertionError: '    [29 chars]color, apetag, audiofx, audioparsers, auparse, autodetect, ...
FAILED run_unittests.py::LinuxlikeTests::test_qtdependency_pkgconfig_detection - subprocess.CalledProcessError: Command '['/opt/local/Library/Framew...
================================================ 5 failed, 381 passed, 87 skipped in 169.56s (0:02:49) ================================================
Meson build system 0.63.3 Unit Tests
Total time: 169.996 seconds
usage: run_project_tests.py [-h] [--backend {ninja,vs,vs2010,vs2012,vs2013,vs2015,vs2017,vs2019,vs2022,xcode}] [-j NUM_WORKERS] [--failfast]
                            [--no-unittests] [--only ONLY [ONLY ...]] [--cross-file CROSS_FILE] [--native-file NATIVE_FILE] [--use-tmpdir]
                            [extra_args ...]
run_project_tests.py: error: unrecognized arguments: -o
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_meson/meson/work/meson-0.63.3" && ./run_tests.py -o addopts='' 
Exit code: 4

Problem with Python 3.9 returning the wrong CPU family name?

Changed 2 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.2.log added

Main.log from x86_64 macOS Monterey, Version 12.6, with installed py39-pytest-xdist

comment:2 Changed 2 years ago by reneeotten (Renee Otten)

ah, this is a side-effect of my (more recent) changes in the python PG where it is assumed that pytest is used as the testing framework, which is the case in 99.9% of the cases. For meson however it isn't used so that requires the python.test_framework to be cleared; I will commit that change shortly; the -o addopts="" is only added when pytest is used so that issue should be resolved.

comment:3 Changed 2 years ago by reneeotten (Renee Otten)

Owner: set to reneeotten
Resolution: fixed
Status: newclosed

In bfd5b5a46f869cf960f55055b51c9b65c1ac3c4a/macports-ports (master):

meson: clear python.test_framework

Closes: #66027

Note: See TracTickets for help on using tickets.