GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Emscripten: Get test suite passing · Issue #127146 · python/cpython

Emscripten: Get test suite passing #127146

New issue
Copy link
New issue
Copy link
Closed
Closed
Emscripten: Get test suite passing#127146
Copy link
Labels
OS-emscriptentestsTests in the Lib/test dirTests in the Lib/test dir

Description

@hoodmane
hoodmane
opened on Nov 22, 2024
Issue body actions

First I'd like to get the test suite to run all the way through, then to pass.

cc @freakboy3742

Update 2025/01/30

Emscripten 4.0.2 has fixes for all of the file system bugs I've looked into. There are still problems with nonblocking I/O which I haven't looked into.

Emscripten PRs:

  • Make seek work on /dev/null emscripten-core/emscripten#22886
    Make readlink system call not resolve the link emscripten-core/emscripten#23000
    Trying to create a directory in a file should return ENOTDIR not EPERM emscripten-core/emscripten#23025
    Refactor lookupPath to avoid recursion. NFC emscripten-core/emscripten#23017
    Fix path resolution for symlinks emscripten-core/emscripten#23072
    Make readdir on /proc/self/fd work emscripten-core/emscripten#23073
    Add nodefs readdir handling for directories that contain exotic entries emscripten-core/emscripten#22925
    Make fstat work on file descriptor with no name emscripten-core/emscripten#23058
    When opening broken symlink with O_CREAT, create file at target emscripten-core/emscripten#23002
    JS file system: distinguish between atime, mtime, and ctime emscripten-core/emscripten#22998
    Fix renaming a file on top of an existing file in memfs and nodefs emscripten-core/emscripten#23074
    Handle trailing % in strftime emscripten-core/emscripten#23045
    Add wcsftime from musl. NFC emscripten-core/emscripten#23061
    Return EISDIR when trying to create a path ending in / with open emscripten-core/emscripten#23135
    Fix mkdir("a/b/..") should return EEXIST emscripten-core/emscripten#23136
    Make open O_CREATE mode 0 work emscripten-core/emscripten#23137
    Ensure the ino we give to readdir matches the ino we give to stat emscripten-core/emscripten#23139
    Correctly handle calls setting timestamp to 0 emscripten-core/emscripten#23310
    Raise ENOSYS if AT_SYMLINK_NOFOLLOW is used with chmod or chown in nodefs emscripten-core/emscripten#23307
    [FS] Allow pipes to be stat'ed emscripten-core/emscripten#23306
    [FS] lookupPath should throw an error on an empty string emscripten-core/emscripten#23366
    [FS] Make fstat work on file descriptors with no name in node rawfs emscripten-core/emscripten#23364
    [FS] Make fstatfs actually work emscripten-core/emscripten#23381
    [FS] Make fstat work on file descriptors with no name in memfs emscripten-core/emscripten#23470
    [FS] Make fstat work on file descriptors with no name in nodefs emscripten-core/emscripten#23480
    JS FS: Don't return ELOOP on a path with a large number of ..'s emscripten-core/emscripten#24591
    Looking up ip for localhost should return 127.0.0.1 emscripten-core/emscripten#24593

Linked PRs

  • gh-127146: Emscripten: Skip segfaults in test suite #127151
  • gh-127146: Mark test_bz2 tests with requires_subprocess #127562
  • gh-127146: Resolve some minor problems in Emscripten tests #127565
  • gh-127146: Some expected failures in Emscripten time tests #127843
  • gh-127146: Emscripten clean up test suite #127984
  • gh-127146: Emscripten Include compiler version in _PYTHON_HOST_PLATFORM #127992
  • gh-127146: Fix test_sysconfidata_json in Emscripten #128545
  • gh-127146: skip Emscripten tests with pending fixes #128549
  • gh-127146: Fix test_sysconfigdata_json for Emscripten #128556
  • gh-127146: Strip dash from Emscripten compiler version #128557
  • gh-127146: Update test skips for Emscripten 4.0.1 #129375
  • gh-127146: Skip test_readinto_non_blocking on Emscripten #129421
  • gh-127146: Don't compare userbase in test_sysconfig_json #129422
  • gh-127146: Update test skips for Emscripten 4.0.2 #129474
  • gh-127146: Fix Emscripten build with --pydebug #131672
  • gh-127146: Fix Emscripten test suite when run with -uall #132092
  • gh-127146: xfail more Emscripten stack overflows #134358
  • [3.14] gh-127146: xfail more Emscripten stack overflows (GH-134358) #134382
  • gh-127146: Allow ignored keys to be missing in test_sysconfig #135622
  • gh-127146: Emscripten: Fix pathlib glob_dotdot test #135624
  • gh-127146: Emscripten: Fix test failure due to missing os.link #135626
  • gh-127146: Emscripten: Skip test_url2pathname_resolve_host #135634
  • gh-127146: Enable large files on Emscripten #135635
  • [3.14] gh-127146: Allow ignored keys to be missing in test_sysconfig (GH-135622) #135650
  • [3.14] gh-127146: Emscripten: Skip test_url2pathname_resolve_host (GH-135634) #135651
  • [3.14] gh-127146: Emscripten: Fix test failure due to missing os.link (GH-135626) #135652
  • [3.14] gh-127146: Emscripten: Fix pathlib glob_dotdot test (GH-135624) #135653
  • [3.14] gh-127146: Enable large files on Emscripten (GH-135635) #135655
  • gh-127146: Add skip_emscripten_stack_overflow in a few places #135722
  • [3.14] gh-127146: Add skip_emscripten_stack_overflow in a few places (GH-135722) #135733
  • gh-127146: Skip test_os.test_mode for Emscripten #135764
  • [3.14] gh-127146: Skip test_os.test_mode for Emscripten (GH-135764) #135784
  • gh-127146: Skip test_netrc.test_security on Emscripten #136227
  • gh-127146: Report uid in Emscripten + node as native uid #136509
  • gh-127146: Skip test_open_undecodable_uri on Emscripten #136510
  • gh-127146: Emscripten: Fix test_open_undecodable_uri by setting -sTEXTDECODER=2 #136624
  • [3.14] gh-127146: Emscripten: Fix test_open_undecodable_uri by setting -sTEXTDECODER=2 (GH-136624) #136631
  • [3.14] gh-127146: Report uid in Emscripten + node as native uid (GH-136509) #136699
  • gh-127146: Emscripten: Make os.umask() actually work #136706
  • gh-127146: Emscripten: Don't need to avoid unpaired surrogate anymore #136707
  • gh-127146: Emscripten: more regular stack overflow skips #136708
  • [3.14] gh-127146: Emscripten: Make os.umask() actually work (GH-136706) #136711
  • [3.14] gh-127146: Emscripten: more regular stack overflow skips (GH-136708) #136712
  • [3.14] gh-127146: Emscripten: Don't need to avoid unpaired surrogate anymore (GH-136707) #136717
  • gh-127146: Emscripten: Set umask to zero in test_apropos_empty_doc #136740
  • [3.14] gh-127146: Emscripten: Set umask to zero in python.sh (GH-136740) #136745
  • gh-127146: Emscripten: Add test_sample_profiler skips where needed #137815
Reacted by Russell Keith-Magee and Agriya Khetarpal
Reacted by Paul m. p. Peny, Victor Stinner, Agriya Khetarpal and Ilhan Polat

Activity

Next
  1. hoodmane
    added
    OS-emscripten
    on Nov 22, 2024
  2. hoodmane
    added 4 commits that reference this issue on Nov 22, 2024

    pythongh-127146 Emscripten: Fix segfaults in test suite

    040409a

    pythongh-127146 Emscripten: Fix segfaults in test suite

    a281d38

    pythongh-127146 Emscripten: Fix segfaults in test suite

    c11b73b

    pythongh-127146 Emscripten: Skip segfaults in test suite

    c6425ea
  3. hoodmane commented on Nov 25, 2024

    @hoodmane
    hoodmane
    on Nov 25, 2024
    ContributorAuthor
    More actions

    This upstream Emscripten PR fixes at least 13 test failures:
    emscripten-core/emscripten#22998

  4. hoodmane commented on Nov 25, 2024

    @hoodmane
    hoodmane
    on Nov 25, 2024
    ContributorAuthor
    More actions

    The tests involving readlink are fixed by this Emscripten PR: emscripten-core/emscripten#23000

  5. hoodmane
    added 2 commits that reference this issue on Dec 3, 2024

    pythongh-127146: Mark test_bz2 tests with requires_subprocess

    cd1fe93

    pythongh-127146: Skip some minor problems in Emscripten tests

    4bfeb60
  6. freakboy3742
    added 2 commits that reference this issue on Dec 4, 2024

    gh-127146: Resolve some minor problems in Emscripten tests (#127565)

    0f91078

    gh-127146: Emscripten: Skip segfaults in test suite (#127151)

    43634fc
  7. picnixz
    added
    testsTests in the Lib/test dirTests in the Lib/test dir
    on Dec 5, 2024
  8. hoodmane
    added a commit that references this issue on Dec 11, 2024

    pythongh-127146: Emscripten some expected failures in time tests

    262634c
  9. freakboy3742
    added a commit that references this issue on Dec 12, 2024

    gh-127146: Some expected failures in Emscripten time tests (#127843)

    41f29e5
  10. hoodmane
    added a commit that references this issue on Dec 16, 2024

    pythongh-127146: Emscripten clean up test suite

    4868732
  11. 141 remaining items

  12. Agent-Hellboy
    added 9 commits that reference this issue on Aug 19, 2025

    pythongh-127146: Add skip_emscripten_stack_overflow in a few places (p…

    71bc47d

    pythongh-127146: Skip test_os.test_mode for Emscripten (python#135764)

    ed3aff8

    pythongh-127146: Emscripten: Fix test_open_undecodable_uri by setting…

    77e5568

    pythongh-127146: Report uid in Emscripten + node as native uid (pytho…

    12e988c

    pythongh-127146: Emscripten: Make os.umask() actually work (python#13…

    df3cc4c

    pythongh-127146: Emscripten: more regular stack overflow skips (pytho…

    2d4d697

    pythongh-127146: Emscripten: Don't need to avoid unpaired surrogate a…

    d5e24ba

    pythongh-127146: Emscripten: Set umask to zero in python.sh (python#1…

    72d2fc3

    pythongh-127146: Emscripten: Add test_sample_profiler skips where nee…

    1971537
  13. kumaraditya303
    added 6 commits that reference this issue on Sep 9, 2025

    [3.14] pythongh-127146: Emscripten: Fix test_open_undecodable_uri by …

    cbf6ad2

    [3.14] pythongh-127146: Report uid in Emscripten + node as native uid (…

    f8d3289

    [3.14] pythongh-127146: Emscripten: more regular stack overflow skips (…

    ec4a40d

    [3.14] pythongh-127146: Emscripten: Make os.umask() actually work (py…

    e252b43

    [3.14] pythongh-127146: Emscripten: Don't need to avoid unpaired surr…

    f6e104e

    [3.14] pythongh-127146: Emscripten: Set umask to zero in python.sh (p…

    2d179f9
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    OS-emscriptentestsTests in the Lib/test dirTests in the Lib/test dir

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      You are visitor 01402503 — GeezerVison does not store the pages you look up.
      Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.