Repository navigation
chore: sync upstream devenv main 72e18a7a (RIG-5030) - #11
Merged
mattwilkinsonn merged 10 commits intoOct 15, 2026
Merged
mattwilkinsonn merged 10 commits into
mattwilkinsonn merged 10 commits into
Conversation
…x#3250) * fix(mailpit): do not allocate a port for a unix socket address services.mailpit derives its port by splitting the listen address on ":" and taking the last field. A unix socket is documented as "unix:<path>:<permissions>", so that field is the permissions, and devenv asks the port allocator for 660: error: Could not find available port starting from 660 after 100 attempts Ports below 1024 are privileged, so every one of the 100 attempts is rejected. parseHost compounds it: it returns "unix", and the process would be started with "--listen unix:<allocated port>". A unix socket address has no port to allocate. It is now detected and passed to mailpit unchanged, and the ports are declared only for a TCP address, since a port that is never declared is one devenv never allocates. * Auto generate docs options data * Auto generate missing individual markdowns --------- Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
* fix Zig version input source * fix Zig version inputs with ZLS enabled * docs: regenerate Zig documentation after rebase
* fix(tasks): start never-started process dependencies * test(processes): cover API start of process prerequisites * test(processes): make attach assertions portable and current Parse process names and phases as fields instead of relying on a nonportable word-boundary regex. Synchronize interactive attach with a fresh request marker rather than a startup line that readiness logs can push out of the visible backlog. AI-assisted implementation: Codex. * fix(processes): release stopped controller ownership before restart Join the retired job controller and release custom spawners before publishing Stopped. Cover retained job handles and repeated concurrent process starts and stops. AI-assisted implementation: Codex. * test(services): wait for allocated debug server port Use the resolved port when the default debug server port is occupied. Verified with port 1949 bound and the service listening on port 1950. AI-assisted implementation: Codex. * test(tasks): cover concurrent starts through a shared process prerequisite Gate shared prerequisite readiness to verify prompt replies, one launch, and dependent ordering. Run this regression and the start/stop stress test explicitly on Linux and macOS CI with retries disabled. AI-assisted implementation: Codex.
* feat(tui): add tui.emoji setting for emoji-free indicators The persistent shell status line shows `👁 devenv watching N files`, and `⏸` while paused. Users who dislike or cannot render emoji had to hide the status line to get rid of them, which also removed the watch status. Add the `tui.emoji` user setting. It defaults to `true`, which keeps the existing output. With `tui.emoji: false`, the eye becomes `◎` and the pause symbol becomes `‖`. Both occupy one terminal column, so the label lines up with the checkmark, cross, and spinner states. Glyph selection lives in `devenv_shell::indicators`, so the renderer asks for an indicator instead of checking configuration. The TUI's activity views contain no emoji, so only the shell status line changes. * feat(tui): use status dots for non-emoji indicators Replace the non-emoji watching and paused glyphs with the status dots that devenv already uses for process states: a fisheye while watching and an idle ring while paused.
…ix#3256) * fix(tasks): wait for cancellation cleanup before scheduler exit Allow task futures to finish their cancellation and process-scope cleanup before the scheduler returns. Add regression coverage for nested commands and graceful joining. Fixes cachix#3251. AI-assisted implementation: Codex. * fix(tasks): cancel status probes before draining shutdown Run status probes through the process-scope executor and preserve cache miss behavior for nonzero and signal exits. Add nested probe cancellation and status exit regressions. AI-assisted implementation: Codex.
* fix(elixir): expose the matching Erlang runtime Include the selected Elixir package runtime so erl, erlc and escript use the same OTP. Add an explicit override for custom packages and integration coverage for default and alternate OTP runtimes. Fixes cachix#3206 AI-assisted-by: Codex * Auto generate docs options data * Auto generate missing individual markdowns --------- Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
…test (cachix#3224) Same class as cachix#3222: user functions shadowing external tools must not intercept the fish hook.
Refs RIG-5030 Co-authored-by: Matt Wilkinson <matt@rigel.build>
🔍 Suggested ReviewersBased on git blame analysis of the changed lines, the following contributors have significant experience with the modified code:
Please consider reviewing this PR as you have authored significant portions of the code being modified. Your expertise would be valuable! 🙏 This comment was automatically generated by git-blame-auto-reviewer Last updated: 2026-10-15T05:11:31.148Z |
rigel-mintaka
marked this pull request as ready for review
October 15, 2026 05:15
mattwilkinsonn
approved these changes
Oct 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
This is the first upstream sync for the devenv fork after the cutover (RIG-5030).
mainnow mirrorscachix/devenvmain(reset in RIG-5367; the old main is kept as tagpre-mirror-main).What
A two-parent merge commit with no conflicts:
main72e18a7a, which is in upstreamcachix/devenvmain.rigel-release4b04197b.It brings 9 upstream commits into
rigel-release. No file was hand-edited.Verification
jj logshows no conflicts on the merge.mainonly by the Rigel patches already onrigel-release(16 files).CI, the required check onrigel-release, runs on this head.Land it with
fork-sync-land FORK=devenv PR=11after approval, as a merge commit. Do not squash.Upstream moved again after this mirror point (fork
mainis 7 behind03582fac). The mirror cron fast-forwards it on its next green run; the next sync PR picks those commits up.Refs RIG-5030