Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: marktext/marktext
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: develop
Choose a base ref
...
head repository: marktext/marktext
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: fix/windows-node-gyp-version
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 7 commits
  • 3 files changed
  • 4 contributors

Commits on May 11, 2026

  1. fix: pin node-gyp to v10 in Windows CI to support Node 16

    node-gyp@latest now resolves to v12 which requires Node >=20.17.0 and
    bundles undici@6 that crashes on Node 16 (missing global ReadableStream).
    Pin to node-gyp@10, the last major line compatible with Node 16.
    
    Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
    Jocs and claude committed May 11, 2026
    Configuration menu
    Copy the full SHA
    6197331 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    262f8ed View commit details
    Browse the repository at this point in the history
  3. fix: set msvs_version 2022 to fix electron-rebuild on windows-2025 ru…

    …nner
    
    windows-latest now resolves to windows-2025 where node-gyp cannot
    auto-detect the Visual Studio installation. Explicitly setting
    msvs_version 2022 via npm config lets electron-rebuild find VS and
    compile native modules (e.g. ced) successfully.
    
    Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
    Jocs and claude committed May 11, 2026
    Configuration menu
    Copy the full SHA
    6f54f8c View commit details
    Browse the repository at this point in the history
  4. fix: set GYP_MSVS_VERSION=2022 env var to fix electron-rebuild on win…

    …dows-2025
    
    npm config set msvs_version only affects npm's own config file and is not
    inherited by electron-rebuild's internal node-gyp subprocess. Setting
    GYP_MSVS_VERSION as a job-level env var propagates to all child processes,
    allowing electron-rebuild to locate the VS 2022 installation on the
    windows-2025 runner.
    
    Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
    Jocs and claude committed May 11, 2026
    Configuration menu
    Copy the full SHA
    2c5b54e View commit details
    Browse the repository at this point in the history
  5. fix: pin Windows runner to windows-2022 and exclude elkjs from licens…

    …e check
    
    [email protected] bundles an older node-gyp whose VS detection is
    broken on the windows-2025 runner (GYP_MSVS_VERSION env var is ignored).
    Pinning to windows-2022 restores the known-good VS 2022 detection path.
    
    [email protected] (EPL-2.0) is a transitive dependency hoisted by yarn from
    mermaid@10. It is not in the onlyAllow list; adding it to excludePackages
    matches the same pattern used for file-icons.
    
    Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
    Jocs and claude committed May 11, 2026
    Configuration menu
    Copy the full SHA
    b308d6e View commit details
    Browse the repository at this point in the history
  6. fix: restore distutils via setuptools and fix Electron sandbox on Linux

    Python 3.12 (default on windows-2022) removed distutils; the gyp scripts
    bundled in the project's electron-rebuild node-gyp still import it. Installing
    setuptools restores the distutils compatibility shim.
    
    On ubuntu-latest (now ubuntu-24.04), Electron's chrome-sandbox binary must
    be SUID root. Adding a chmod step before the test run fixes the fatal sandbox
    error that caused unit tests to fail. The xvfb-action matrix default
    fail-fast also caused macos-11 to be cancelled whenever ubuntu failed.
    
    Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
    Jocs and claude committed May 11, 2026
    Configuration menu
    Copy the full SHA
    ed37c1f View commit details
    Browse the repository at this point in the history
  7. fix: chown root chrome-sandbox before chmod to satisfy SUID requirement

    chmod 4755 alone is insufficient; the setuid bit only takes effect when
    the binary is owned by root. Adding chown root before chmod ensures
    Electron's sandbox passes the ownership check on ubuntu-latest.
    
    Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
    Jocs and claude committed May 11, 2026
    Configuration menu
    Copy the full SHA
    ea52280 View commit details
    Browse the repository at this point in the history
Loading