https://github.com/python/cpython/commit/08d289208b626b7ba9b26fe690e3fcec439b2092
commit: 08d289208b626b7ba9b26fe690e3fcec439b2092
branch: 3.14
author: Miss Islington (bot) <[email protected]>
committer: hugovk <[email protected]>
date: 2025-10-05T16:03:49+03:00
summary:

[3.14] gh-138130: Fix return value of libc_ver() on Emscripten (GH-138132) 
(#138312)

Co-authored-by: Hood Chatham <[email protected]>

files:
M Lib/platform.py
M Lib/test/test_platform.py

diff --git a/Lib/platform.py b/Lib/platform.py
index 86141f072d20e4..784b6b749b7524 100644
--- a/Lib/platform.py
+++ b/Lib/platform.py
@@ -173,6 +173,11 @@ def libc_ver(executable=None, lib='', version='', 
chunksize=16384):
 
     """
     if not executable:
+        if sys.platform == "emscripten":
+            # Emscripten's os.confstr reports that it is glibc, so special case
+            # it.
+            ver = ".".join(str(x) for x in 
sys._emscripten_info.emscripten_version)
+            return ("emscripten", ver)
         try:
             ver = os.confstr('CS_GNU_LIBC_VERSION')
             # parse 'glibc 2.28' as ('glibc', '2.28')
diff --git a/Lib/test/test_platform.py b/Lib/test/test_platform.py
index 6224c989e6552b..187a3d54809105 100644
--- a/Lib/test/test_platform.py
+++ b/Lib/test/test_platform.py
@@ -525,8 +525,10 @@ def test_ios_ver(self):
             self.assertEqual(override.model, "Whiz")
             self.assertTrue(override.is_simulator)
 
-    @unittest.skipIf(support.is_emscripten, "Does not apply to Emscripten")
     def test_libc_ver(self):
+        if support.is_emscripten:
+            assert platform.libc_ver() == ("emscripten", "4.0.12")
+            return
         # check that libc_ver(executable) doesn't raise an exception
         if os.path.isdir(sys.executable) and \
            os.path.exists(sys.executable+'.exe'):

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to