@@ -22,29 +22,6 @@ developer must perform them.
2222- Never publish from an unverified dependency chain or use repository-local
2323 overrides for the final release smoke test.
2424
25- ### Active local override: ` moonbitlang/async `
26-
27- ` moon.work ` lists ` ../async ` as a member, so every module resolves
28- ` moonbitlang/async ` to a local checkout instead of the pinned registry version.
29- That checkout is on the ` external-loop-integration ` branch, which adds
30- ` set_external_event_loop ` . Proton needs it: AppKit owns the main thread, so
31- before this Proton started a pthread and ran all application code there. With an
32- external event loop every line of MoonBit stays on the main thread and only
33- async's waiting half moves to a dedicated thread.
34-
35- It is a workspace member rather than a per-module ` moon.mod ` override on
36- purpose. Seven modules depend on async, and overriding only some of them would
37- link two copies into one process, and therefore two event loops.
38-
39- The branch still calls itself ` 0.20.3 ` , the same version published on mooncakes,
40- so no version comparison can detect the substitution. ` scripts/verify_release_metadata.mjs `
41- therefore fails while any non-` ./ ` member is present, and that script already
42- runs in the publish workflow's validate step. Remove the member and re-pin to a
43- published async before releasing.
44-
45- Note that ` moon fmt ` strips comments from ` moon.work ` , which is why this
46- explanation lives here instead of beside the member.
47-
4825## Project Structure
4926- ` native/ ` : standalone CMake project for the Proton native runtime. It builds
5027 ` proton ` as a dynamic library/import library, installs ` proton_native.h ` , and
0 commit comments