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]
