Skip to content

MinGW web runner#71

Merged
jayvdb merged 6 commits into
mainfrom
mingw
Jul 5, 2026
Merged

MinGW web runner#71
jayvdb merged 6 commits into
mainfrom
mingw

Conversation

@jayvdb

@jayvdb jayvdb commented Jul 4, 2026

Copy link
Copy Markdown
Member

No description provided.

jayvdb and others added 6 commits July 4, 2026 08:35
prefetch:msvc / prefetch:mingw invoked bare `python`, which resolves to the ssl-less 32-bit Pyodide shim
when the python guest env is loaded (CI runs the full MISE_ENV set) -- portable-msvc.py died with
`ModuleNotFoundError: No module named 'ssl'`. Both tasks now use the pinned CPython via the new
py3_win_fwd var.

The mingw shim's `__type_info_root_node` was 8-mod-16 aligned, but it anchors the SLIST_HEADER that
vcruntime140's __std_type_info_name chains name allocations onto, and x64 SLIST operations require
16-byte alignment (cmpxchg16b) -- the first type_info::name() call access-violated inside
ntdll!ExpInterlockedPopEntrySListEnd. Only dotnet-data1 hit it (its dotnet.js is the one module JS that
touches Intl, reaching the path via Intl.DateTimeFormat -> v8/ICU LocaleCacheKey::hashCode). .balign 16
fixes it; the dotnet-data1 web-runner test now passes locally under mingw.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The step was carried over from test-msvc.yaml on a stale premise: since win-dotnet2 (#70) merged,
build-ws-dotnet-data1-module builds the module under Windows mise (including the cmd 8191-char PATH cap
handled as an MSBuild property override), so build-modules already covers it via the build-ws-* glob.
Also drop the two README lines claiming the .NET WASM build does not work under Windows mise.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
New semgrep rule comment-summary-line-c applies the summary-first convention to /* */ blocks and //
runs (no C linter has this check -- clang-tidy stops at namespace-closing/task-tag comments, cpplint at
whitespace), and the existing # rule now also covers *.s GAS comments. The mingw-shim sources are
restyled to comply. Also prune comment fragments that restated adjacent code or duplicated rationale
documented elsewhere.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
gen:python-ws and gen:python-rest skipped on Windows on the stale premise that ruff/coreutils were off
the busybox-ash PATH; they resolve fine now. The real (undocumented) blocker was line endings -- ruff's
default `line-ending = auto` wrote CRLF on Windows, so the committed LF trees drifted. Pin
`[format] line-ending = lf` in ruff.toml and the tasks regenerate byte-identical output on every OS, so
the skips are removed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@jayvdb jayvdb marked this pull request as ready for review July 4, 2026 05:24
@jayvdb jayvdb requested a review from pierre-tenedero July 4, 2026 05:24
@jayvdb jayvdb merged commit 4a23f3c into main Jul 5, 2026
8 checks passed
@jayvdb jayvdb deleted the mingw branch July 5, 2026 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants