Skip to content

refactor: use libuv for subprocesses#13591

Draft
eric-wieser wants to merge 9 commits intoleanprover:masterfrom
eric-wieser:uv_spawn
Draft

refactor: use libuv for subprocesses#13591
eric-wieser wants to merge 9 commits intoleanprover:masterfrom
eric-wieser:uv_spawn

Conversation

@eric-wieser
Copy link
Copy Markdown
Contributor

@eric-wieser eric-wieser commented Apr 30, 2026

This PR changes IO.Process.spawn to use libuv, which fixes a fork-safety issue where setenv was called after fork.

This has the bonus of eliminating lots of windows-only code

Written with assistance from Antigravity / Gemini.

I have not yet carefully reviewed object lifetimes.

@eric-wieser
Copy link
Copy Markdown
Contributor Author

release-ci

@github-actions github-actions Bot added the release-ci Enable all CI checks for a PR, like is done for releases label May 1, 2026
@eric-wieser
Copy link
Copy Markdown
Contributor Author

@hargoniX, are you happy to send this to the release-ci? I think me adding the label doesn't actually work.

@github-actions github-actions Bot added the toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN label May 1, 2026
@mathlib-lean-pr-testing
Copy link
Copy Markdown

Mathlib CI status (docs):

  • ❗ Batteries/Mathlib CI will not be attempted unless your PR branches off the nightly-with-mathlib branch. Try git rebase a9946fe4ac0d53a63f81ccc6e8786ce513f8b494 --onto 0a6c31520b2ebaa6e71227454b46ebfb4986ae7b. You can force Mathlib CI using the force-mathlib-ci label. (2026-05-01 07:35:07)

@leanprover-bot
Copy link
Copy Markdown
Collaborator

Reference manual CI status:

  • ❗ Reference manual CI will not be attempted unless your PR branches off the nightly-with-manual branch. Try git rebase a9946fe4ac0d53a63f81ccc6e8786ce513f8b494 --onto 3fc99eef102549c743c6c63547983319bfae6f01. You can force reference manual CI using the force-manual-ci label. (2026-05-01 07:35:09)

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

Labels

release-ci Enable all CI checks for a PR, like is done for releases toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants