openembedded-core.lists.openembedded.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] python3: Address failing ptests on musl
@ 2025-08-22 18:33 Khem Raj
  2025-08-22 18:45 ` Patchtest results for " patchtest
  2025-09-01  9:40 ` [OE-core] " Quentin Schulz
  0 siblings, 2 replies; 4+ messages in thread
From: Khem Raj @ 2025-08-22 18:33 UTC (permalink / raw)
  To: openembedded-core; +Cc: Khem Raj

Take a partial patch to disable portion of test_makedev, its also applied
in alpine. NODEV does not exist on musl

Add test_null_dlsym to ignore list on musl, it needs GNU ifunc support
and musl does not implement GNU ifuncs

fixes
Failed ptests:
{'python3': ['test_null_dlsym', 'test_makedev', 'python3']}

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../python3/test_posix_nodev_disable.patch       | 16 ++++++++++++++++
 meta/recipes-devtools/python/python3_3.13.7.bb   |  6 ++++--
 2 files changed, 20 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch

diff --git a/meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch b/meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch
new file mode 100644
index 00000000000..85767e1e898
--- /dev/null
+++ b/meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch
@@ -0,0 +1,16 @@
+Disable part of test_posix.test_makedev that depends on the NODEV
+macro being defined (missing on musl).
+
+Upstream-Status: Submitted [https://github.com/python/cpython/pull/31794]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/Lib/test/test_posix.py
++++ b/Lib/test/test_posix.py
+@@ -757,7 +757,7 @@ class PosixTester(unittest.TestCase):
+             self.assertRaises((ValueError, OverflowError), posix.makedev, x, minor)
+             self.assertRaises((ValueError, OverflowError), posix.makedev, major, x)
+ 
+-        if sys.platform == 'linux':
++        if False:
+             NODEV = -1
+             self.assertEqual(posix.major(NODEV), NODEV)
+             self.assertEqual(posix.minor(NODEV), NODEV)
diff --git a/meta/recipes-devtools/python/python3_3.13.7.bb b/meta/recipes-devtools/python/python3_3.13.7.bb
index 81d034bec6b..2fe0ae1a8f3 100644
--- a/meta/recipes-devtools/python/python3_3.13.7.bb
+++ b/meta/recipes-devtools/python/python3_3.13.7.bb
@@ -31,7 +31,9 @@ SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \
            file://0001-test_readline-skip-limited-history-test.patch \
            file://0001-Generate-data-for-OpenSSL-3.4-and-add-it-to-multissl.patch \
            "
-
+SRC_URI:append:libc-musl = "\
+           file://test_posix_nodev_disable.patch \
+           "
 SRC_URI:append:class-native = " \
            file://0001-Lib-sysconfig.py-use-prefix-value-from-build-configu.patch \
            "
@@ -247,7 +249,7 @@ do_install:append:class-nativesdk () {
 }
 
 do_install_ptest:append:class-target:libc-musl () {
-    sed -i -e 's|SKIPPED_TESTS=|SKIPPED_TESTS="-x test__locale -x test_c_locale_coercion -x test_locale -x test_os test_re -x test__xxsubinterpreters -x test_threading --ignore test.test_strptime.StrptimeTests.test_date_locale2"|' ${D}${PTEST_PATH}/run-ptest
+    sed -i -e 's|SKIPPED_TESTS=|SKIPPED_TESTS="-x test__locale -x test_c_locale_coercion -x test_locale -x test_os test_re -x test__xxsubinterpreters -x test_threading --ignore test.test_strptime.StrptimeTests.test_date_locale2 --ignore test.test_ctypes.test_dlerror.TestNullDlsym.test_null_dlsym"|' ${D}${PTEST_PATH}/run-ptest
 }
 
 SYSROOT_PREPROCESS_FUNCS:append:class-target = " provide_target_config_script"


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Patchtest results for [PATCH] python3: Address failing ptests on musl
  2025-08-22 18:33 [PATCH] python3: Address failing ptests on musl Khem Raj
@ 2025-08-22 18:45 ` patchtest
  2025-09-01  9:40 ` [OE-core] " Quentin Schulz
  1 sibling, 0 replies; 4+ messages in thread
From: patchtest @ 2025-08-22 18:45 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 2893 bytes --]

Thank you for your submission. Patchtest identified one
or more issues with the patch. Please see the log below for
more information:

---
Testing patch /home/patchtest/share/mboxes/python3-Address-failing-ptests-on-musl.patch

FAIL: test max line length: Patch line too long (current length 327, maximum is 200) (test_metadata.TestMetadata.test_max_line_length)

PASS: pretest src uri left files (test_metadata.TestMetadata.pretest_src_uri_left_files)
PASS: test CVE check ignore (test_metadata.TestMetadata.test_cve_check_ignore)
PASS: test CVE tag format (test_patch.TestPatch.test_cve_tag_format)
PASS: test Signed-off-by presence (test_mbox.TestMbox.test_signed_off_by_presence)
PASS: test Signed-off-by presence (test_patch.TestPatch.test_signed_off_by_presence)
PASS: test Upstream-Status presence (test_patch.TestPatch.test_upstream_status_presence_format)
PASS: test author valid (test_mbox.TestMbox.test_author_valid)
PASS: test commit message presence (test_mbox.TestMbox.test_commit_message_presence)
PASS: test commit message user tags (test_mbox.TestMbox.test_commit_message_user_tags)
PASS: test lic files chksum modified not mentioned (test_metadata.TestMetadata.test_lic_files_chksum_modified_not_mentioned)
PASS: test mbox format (test_mbox.TestMbox.test_mbox_format)
PASS: test non-AUH upgrade (test_mbox.TestMbox.test_non_auh_upgrade)
PASS: test shortlog format (test_mbox.TestMbox.test_shortlog_format)
PASS: test shortlog length (test_mbox.TestMbox.test_shortlog_length)
PASS: test src uri left files (test_metadata.TestMetadata.test_src_uri_left_files)
PASS: test target mailing list (test_mbox.TestMbox.test_target_mailing_list)

SKIP: pretest pylint: No python related patches, skipping test (test_python_pylint.PyLint.pretest_pylint)
SKIP: test bugzilla entry format: No bug ID found (test_mbox.TestMbox.test_bugzilla_entry_format)
SKIP: test lic files chksum presence: No added recipes, skipping test (test_metadata.TestMetadata.test_lic_files_chksum_presence)
SKIP: test license presence: No added recipes, skipping test (test_metadata.TestMetadata.test_license_presence)
SKIP: test pylint: No python related patches, skipping test (test_python_pylint.PyLint.test_pylint)
SKIP: test series merge on head: Merge test is disabled for now (test_mbox.TestMbox.test_series_merge_on_head)
SKIP: test summary presence: No added recipes, skipping test (test_metadata.TestMetadata.test_summary_presence)

---

Please address the issues identified and
submit a new revision of the patch, or alternatively, reply to this
email with an explanation of why the patch should be accepted. If you
believe these results are due to an error in patchtest, please submit a
bug at https://bugzilla.yoctoproject.org/ (use the 'Patchtest' category
under 'Yocto Project Subprojects'). For more information on specific
failures, see: https://wiki.yoctoproject.org/wiki/Patchtest. Thank
you!

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [OE-core] [PATCH] python3: Address failing ptests on musl
  2025-08-22 18:33 [PATCH] python3: Address failing ptests on musl Khem Raj
  2025-08-22 18:45 ` Patchtest results for " patchtest
@ 2025-09-01  9:40 ` Quentin Schulz
  2025-09-02  2:09   ` Khem Raj
  1 sibling, 1 reply; 4+ messages in thread
From: Quentin Schulz @ 2025-09-01  9:40 UTC (permalink / raw)
  To: raj.khem, openembedded-core

Hi Khem,

On 8/22/25 8:33 PM, Khem Raj via lists.openembedded.org wrote:
> Take a partial patch to disable portion of test_makedev, its also applied
> in alpine. NODEV does not exist on musl
> 
> Add test_null_dlsym to ignore list on musl, it needs GNU ifunc support
> and musl does not implement GNU ifuncs
> 
> fixes
> Failed ptests:
> {'python3': ['test_null_dlsym', 'test_makedev', 'python3']}
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>   .../python3/test_posix_nodev_disable.patch       | 16 ++++++++++++++++
>   meta/recipes-devtools/python/python3_3.13.7.bb   |  6 ++++--
>   2 files changed, 20 insertions(+), 2 deletions(-)
>   create mode 100644 meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch
> 
> diff --git a/meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch b/meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch
> new file mode 100644
> index 00000000000..85767e1e898
> --- /dev/null
> +++ b/meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch
> @@ -0,0 +1,16 @@
> +Disable part of test_posix.test_makedev that depends on the NODEV
> +macro being defined (missing on musl).
> +
> +Upstream-Status: Submitted [https://github.com/python/cpython/pull/31794]

Uh? This is merged already (for a year) so should be Backport instead 
with the commit log.

Additionally...

> +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> +--- a/Lib/test/test_posix.py
> ++++ b/Lib/test/test_posix.py
> +@@ -757,7 +757,7 @@ class PosixTester(unittest.TestCase):
> +             self.assertRaises((ValueError, OverflowError), posix.makedev, x, minor)
> +             self.assertRaises((ValueError, OverflowError), posix.makedev, major, x)
> +
> +-        if sys.platform == 'linux':
> ++        if False:

This change isn't in the linked Pull Request, so this is all very 
misleading.

Cheers,
Quentin


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [OE-core] [PATCH] python3: Address failing ptests on musl
  2025-09-01  9:40 ` [OE-core] " Quentin Schulz
@ 2025-09-02  2:09   ` Khem Raj
  0 siblings, 0 replies; 4+ messages in thread
From: Khem Raj @ 2025-09-02  2:09 UTC (permalink / raw)
  To: Quentin Schulz; +Cc: openembedded-core

On Mon, Sep 1, 2025 at 2:40 AM Quentin Schulz <quentin.schulz@cherry.de> wrote:
>
> Hi Khem,
>
> On 8/22/25 8:33 PM, Khem Raj via lists.openembedded.org wrote:
> > Take a partial patch to disable portion of test_makedev, its also applied
> > in alpine. NODEV does not exist on musl
> >
> > Add test_null_dlsym to ignore list on musl, it needs GNU ifunc support
> > and musl does not implement GNU ifuncs
> >
> > fixes
> > Failed ptests:
> > {'python3': ['test_null_dlsym', 'test_makedev', 'python3']}
> >
> > Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > ---
> >   .../python3/test_posix_nodev_disable.patch       | 16 ++++++++++++++++
> >   meta/recipes-devtools/python/python3_3.13.7.bb   |  6 ++++--
> >   2 files changed, 20 insertions(+), 2 deletions(-)
> >   create mode 100644 meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch
> >
> > diff --git a/meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch b/meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch
> > new file mode 100644
> > index 00000000000..85767e1e898
> > --- /dev/null
> > +++ b/meta/recipes-devtools/python/python3/test_posix_nodev_disable.patch
> > @@ -0,0 +1,16 @@
> > +Disable part of test_posix.test_makedev that depends on the NODEV
> > +macro being defined (missing on musl).
> > +
> > +Upstream-Status: Submitted [https://github.com/python/cpython/pull/31794]
>
> Uh? This is merged already (for a year) so should be Backport instead
> with the commit log.
>

I think I should have said this as a reference to where the issue got
introduced.

> Additionally...
>
> > +Signed-off-by: Khem Raj <raj.khem@gmail.com>
> > +--- a/Lib/test/test_posix.py
> > ++++ b/Lib/test/test_posix.py
> > +@@ -757,7 +757,7 @@ class PosixTester(unittest.TestCase):
> > +             self.assertRaises((ValueError, OverflowError), posix.makedev, x, minor)
> > +             self.assertRaises((ValueError, OverflowError), posix.makedev, major, x)
> > +
> > +-        if sys.platform == 'linux':
> > ++        if False:
>
> This change isn't in the linked Pull Request, so this is all very
> misleading.

Right.

>
> Cheers,
> Quentin


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-09-02  2:10 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-22 18:33 [PATCH] python3: Address failing ptests on musl Khem Raj
2025-08-22 18:45 ` Patchtest results for " patchtest
2025-09-01  9:40 ` [OE-core] " Quentin Schulz
2025-09-02  2:09   ` Khem Raj

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).