Merged
Conversation
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.
v0.9.0
lssh-suite 0.9.0is a substantial update that expands the project from a TUI-first SSH client into a broader multi-command SSH operations suite. This release adds new tools for diff, mount, and pipe-oriented workflows, improves configuration compatibility with OpenSSH, and strengthens packaging, completion, and test coverage across the project.Highlights
Added
lsdiff: a synchronized TUI diff viewer for comparing remote files across multiple SSH hosts.Added
lsshfs: a single-host SSH mount command with OS-specific local mount backends.Added
lspipe: a persistent pipe-oriented runner that keeps a selected host set in the background and reuses it from local shell pipelines.Added OpenSSH config import and
--generate-lssh-confsupport to help bootstraplsshconfig from existing~/.ssh/config.Expanded conditional config matching for more context-aware host selection and overrides.
Improved installation, packaging, shell completions, and release layout for the full suite.
New commands
lsdiffCompare the same remote path across multiple hosts, or compare explicit
@host:/pathtargets in a synchronized multi-pane TUI.lsshfsMount one remote directory from one selected host using the same inventory and host-selection flow as
lssh. In0.9.0, supported client platforms are:lspipeCreate a reusable background session for a chosen host set, then execute commands or bridge local workflows through pipes/FIFOs.
Configuration improvements
lsshconfig from OpenSSH host entries.lsshconfig file does not exist.ssh_configfork internally.Packaging and installation
This release provides both a full suite package and split packages:
lssh_*: full suitelssh-core_*:lsshlssh-transfer_*: transfer/diff/mount toolslssh-monitor_*:lsmonlssh-sysadmin_*:lsshell,lsmux,lspipeShell completions for
bash,zsh, andfishare included.Compatibility notes
lsshfsis supported on Linux and macOS in0.9.0.lsshfsis not supported on Windows in0.9.0and is excluded from Windows release packaging.Quality and test coverage
This release also adds broader regression coverage for:
lspipesession and execution behaviorlsshfsrunner/background/unmount behaviorPackaging and release artifact fixes
This release also fixes packaging gaps from earlier artifacts.
For example, the
v0.8.0darwin_arm64package did not includelssyncinbin/, even thoughlssyncwas part of the intended build/install command set for that release.In
v0.9.0, the release workflow and package layout were updated so the expected command set is bundled more consistently across platforms and package types. This also includes newer suite commands such aslsmux,lsdiff,lspipe, andlsshfswhere supported, with platform-specific exclusions applied where necessary, such aslsshfson Windows.Thanks
Thanks to everyone testing the new workflows and especially the real-machine validation around
lsshfsbefore release.