Repository navigation
Bump actions/checkout from 5 to 7 - #2
Closed
dependabot[bot] wants to merge 34 commits into
Closed
dependabot[bot] wants to merge 34 commits into
dependabot[bot] wants to merge 34 commits into
Conversation
added 30 commits
September 23, 2026 19:12
Scan installed software across winget/npm/pipx/uv/cargo, merge with a pkgs.txt manifest, and export a restore-ready snapshot. Custom tools via tools.sexp plugins.
Pure state machine in lib/tui plus a keyboard-only notty frontend; default command uses it on a tty, plain text when piped.
TOML schema with per-package pm/id/version fields and a Pm fallback type so every manager round-trips. Drops pkgfile and all pkgs.txt references; adds CI workflow and notty patch.
So the Windows test box can grab a ready binary from the Actions run instead of building locally.
Rows render green/yellow/red/cyan by install status via Tui.color_of; wheel events step three rows through new Scroll_up/Scroll_down actions. Mouse reporting was already on.
Rows reuse Dashboard.status_symbol so the TUI matches the exit printout. Section headers render as non-selectable divider rows. Mouse scroll moves one row per event.
Divider rows pushed the frame past the terminal height so the end of the list rendered off-screen. The window is now budgeted in lines and fills upward when the cursor row would fall outside.
winget show ran once per missing app (~1s each on Windows); now up to 8 domains. ensure no longer attempts the winget download where it can never succeed. Linux startup 5.7s to 0.7s.
scan_all runs winget on its own domain while the other PMs scan via Proc.par_map8, so startup costs max(winget, slowest other) instead of the sum. par_map8 moves from Dashboard to Proc for reuse. DEVKIT_TIMING=1 prints per-phase timings to stderr.
Apply the ocaml55 patch from outside the clone (../ci path). Shim winsize.c with a Win32 console fallback so notty.unix compiles on mingw; Unix branch untouched. main falls back to plain text on Win32. Both shims die with notty in Phase B.
bin/tui_front is rewritten against LTerm events driving the untouched lib/tui state machine: same keys (arrows/j/k/pgup/pgdn/home/end/Enter/q/Esc/Ctrl), same exit-to-dashboard behavior. Wheel input dropped (no reliable mapping). notty is gone: dep, CI pin, both ci/notty shims, and the Win32 plain-text fallback.
save_state/load_state around the event loop, so redraws paint off-scrollback and exiting restores the shell view. Fixes flashing and repeated frames.
Whitespace-only reflow missed by the parallel-scans commit; keeps the CI fmt job green.
Per-line goto+clear+write instead of full-screen clear, so scrolling no longer flashes. No-op events skip the repaint; resize still repaints from clear. Enable mouse reporting and map wheel up/down to scroll. Add the LTerm.flush that repaints require.
Manifest items match scan results by candidate command names (full value, basename, URL stem) instead of exact id. Anything missed falls back to Proc.which: every candidate in one spawn (command -v loop, where on Win32). build_sections takes an optional runner; all live commands pass it, tests skip it.
New lib/update: one npm outdated -g --json spawn (exit forced 0, npm exits 1 when updates exist), PyPI lookups for pipx/uv, crates.io max_version for cargo (with User-Agent), registry calls capped at 15s and parallel on domains. Only Installed manifest Pm rows are queried. Tui.apply_updates marks hits NeedsUpdate with a summary message + log.
run_export takes ?only/?except: sections, winget JSON sibling, counts and empty-scan message all respect the filter. CLI gains --only/--except (comma-separated via Arg.list). README + CHANGES updated.
Personal machine inventory and operator notes must never be committed.
Four suites die with no output under dune runtest on Windows. On failure, rerun those binaries directly via dune exec and print exit codes, to tell a sandbox failure apart from an exe loader crash.
Proc.which, build_sections and real_open_browser take after Sys.os_type when tests omit ~os, so Windows CI took the Win32 branch against Unix fakes. Thread ?os through build_sections and real_open_browser and pin ~os in the Unix tests. Bootstrap path tests now build expectations with Filename.concat instead of hardcoded slashes.
Source stanza, generated opam URLs and crates.io User-Agent. LICENSE matches the declared MIT license stanza.
actions/checkout@v4 targets deprecated Node 20; setup-ocaml dune-cache input is deprecated in favor of cache.
Silences CodeQL missing-workflow-permissions; nothing in the workflow needs write.
find_on_path takes ?os: Win32 splits PATH on ';' only and probes name.exe, so drive-letter dirs and extensionless lookups hit. App.scan carries the ensure error; empty scans print the winget resolution and, in the TUI, pause for a keypress so Explorer-launched windows stay readable. press_enter/press_u repaint a Tui.set_message status line before the blocking call.
Copy main.exe to devkit.exe before artifact upload so the download runs under its own name. README uses dune exec devkit.
The PM scan takes ~2s on Windows before the TUI draws; print to stderr first so the wait looks alive instead of hung.
test_on_path assumed Unix colon-PATH via the default os; pin ~os:Unix. show-fallback-many counted parallel show calls with a shared ref, losing updates across domains; use an Atomic counter instead.
The TUI blocked on App.scan before the first frame, showing only a stderr line. Run the scan on a preemptive worker and race it against terminal events so quit and resize stay live. Apply_outcome now logs the Failed and Skipped reason instead of the bare status.
The exit printout rendered the pre-session snapshot, hiding installs done in the session. Overlay the session row statuses onto the dashboard before rendering.
Build_sections splits Installed items out of manifest sections into a trailing Installed section, mirroring Pending updates. The table now ends on green checkmarks in plain output and the TUI.
Both spawn backends move to open_process_args_full with concurrent pipe drains: the inventory runner drops stderr (silences uv's 'No tools installed' notice), the installer spawn merges it into the reported output per its combined-output contract. parse_uv explicitly skips the notice.
Url rows open in every status; installed/manual GitHub rows open the repo page (new Install.repo_page, also the API-failure fallback instead of an error). Do_open carries the row item so reporting keys on the manifest value, and Opened outcomes keep the row status instead of demoting installed rows to manual.
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 7. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](actions/checkout@v5...v7) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Author
LabelsThe following labels could not be found: Please fix the above issues or remove invalid values from |
Author
|
OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting If you change your mind, just re-open this PR and I'll resolve any conflicts on it. |
dependabot
Bot
deleted the
dependabot/github_actions/actions/checkout-7
branch
October 9, 2026 03:14
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.
Bumps actions/checkout from 5 to 7.
Release notes
Sourced from actions/checkout's releases.
... (truncated)
Changelog
Sourced from actions/checkout's changelog.
... (truncated)
Commits
3d3c42eprep v7.0.1 release (#2531)2880268escape values passed to --unset (#2530)12cd223trim only ascii whitespace for branch (#2521)62661c4skip running unsafe pr check if input is default (#2518)e8d4307Bump the minor-actions-dependencies group with 2 updates (#2499)631c942eslint 9 (#2474)4f1f4aeBump actions/upload-artifact from 4 to 7 (#2476)ba09753Bump actions/checkout from 6 to 7 (#2488)b9e0990Bump docker/login-action from 3.3.0 to 4.2.0 (#2479)e8cb398Bump docker/build-push-action from 6.5.0 to 7.2.0 (#2478)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)