Repository navigation
[0.3.0] - 2026-10-24
Added
-
Optional terminal workbench (
numan tui,--features tui): interactive package workbench with a Clap-derived command catalog and generic executor, guided command forms, visual theme, and a Commands section. Install-only package types are labelled as such and self-update is gated in the TUI. The default build still excludes the TUI dependencies (Ratatui/Crossterm); CI asserts this and runs parity coverage between the TUI executor and the CLI. -
Overlay activation (#17): overlay data model distinguishing persistent activation from session/project overlay activation,
overlay use/overlay hidefor eligible packages, and interactive overlay session transactions (P3) with fail-closed handling of unresolved reservations and metadata. Installation remains inert; neither activation mode is implied by install. -
Hook profiles (#16): hook profile data model with structured bindings (
id,event,handler, optionalfilter) and a deliberately small allow-list of supported hook events, plus explicit hook profile activation (P2) as a separate opt-in step from ordinary package activation. -
Invisible activation via a single generated
numan_init.nu(#32): Numan owns one generated file,<root>/nu_state/numan_init.nu, sourced fromconfig.nuexactly once. It aggregates the per-kind autoload files and is regenerated atomically on activate/deactivate/rollback/init.numan doctordetects a missing/stale init file or missingconfig.nusource line (nu_init.drift,nu_init.config_source) and--fixrepairs both. -
One-touch
numan migratefor nupm adopters (#31): migrates existing nupm installations to Numan in a single command. -
Enhanced
numan setup loader:- Configuration isolation: separates user tool configurations into
loader-config.nuso that updating the loader engine (numan setup loader --force) preserves custom tool definitions. - Direct GitHub release binary installer: downloads prebuilt binaries for CLI tools (Starship, Zoxide, Carapace, Atuin, Mise, Direnv, Oh-My-Posh) into
$NUMAN_ROOT/tools/bin/, verifying SHA-256 integrity when release metadata or a checksum asset is available, with--install/--install-missingand persistence to the user'sPATH. - Tool management flags:
--status(inspect health, config, PATH status, and cached autoload files),--detect(discover PATH tools),--add <tool>(preset or custom),--remove <tool>(with cache purge), and--clean(invalidate cached init files).
- Configuration isolation: separates user tool configurations into
-
Bundled Nushell plugins in
numan setup nu: setup now extracts the full Nushell release archive (nuplus all bundlednu_plugin_*binaries) by default and records them in the lockfile;--minimalrestores the previous binary-only behaviour. -
Upstream release and Nu-gap watcher (report-only): scheduled detection of upstream package releases and Nushell version gaps (
scripts/watch_upstreams.py,watch-upstreamsworkflow), failing closed on comparison operators with wildcard bounds. -
Nushell 0.116.1 tracking: release ledger and CI catch-up for the official Nushell 0.116.1 release; real-Nu acceptance baseline raised to 0.115.0 with a Nushell release watcher.
Changed
numan setup nuextracts bundled plugins by default (see above); use--minimalfor the old binary-only install.- Registry archive entries without
cargo_nameare now tolerated:SourceInfo.cargo_nameis optional (archive intake packages carrysource {git, rev}provenance instead), andnuman infoomits the line when absent.
Fixed
- UUID disclosure: package UUIDs are no longer exposed in CLI output.
- Windows test PATH pollution (#70): acceptance tests can no longer persist temporary paths into the Windows User PATH (follow-up hardening of the 0.2.2 fix).