Changelog
- fix: restore the executable bit on assets/screens.sh
- fix: propagate SetItems' command through WithFiles/applySort/resort
- feat: fuzzy filter file panels with / (#31)
- feat: extend --highlight-diff to flag size mismatches
- feat: add the size-differs color token and icon
- fix: make TestJumpEscCancelsWithoutNavigating Windows-safe
- feat: highlight file panel entries present on only one side
- feat: add the highlight-diff color token and icon
- fix: split Tab into two groups so Shift+Tab has a job outside Connection
- feat: make the Processes panel focusable and scrollable
- feat: make the Log panel focusable and scrollable
- feat: jump to a path by typing it
- fix: add breathing room between the identity pills and the hints
- fix: hand-render the footer's short hints, not through bubbles/help
- fix: reorder the footer's pills before hints, center the status detail
- feat: segmented status bar and footer identity pills
- fix: give every panel the full height it's allocated
- feat: render the status line and footer as solid bars
- feat: sort files by name, size or date
- fix: key file marks by name instead of list position
- feat: drive the footer from the shared keymap
- feat: show a full key reference on ?
- fix: blank the panels behind the connection dialog
- fix: close the embedded-title top border flush with the box
- fix: derive panel content width from the border box, not a guess
- fix: unify panel titles to Title Case
- feat: embed the panel title into the top border
- fix: stop the size/date columns from wrapping, and color them apart
- feat: show file size and modification date in the panels
- feat: add a byte-size formatting helper
- feat: add a responsive layout floor to the app
- fix: drop the panel's decorative separator line
- fix: add breathing room before the connection overlay's hint line
- revert: drop the overlay background, widen the dialog instead
- fix: set explicit backgrounds throughout the connection overlay
- fix: give the connection overlay its own background
- fix: size the connection overlay to its actual content
- fix: make Tab order follow the connection form's visual layout
- fix: give the connection form breathing room and label contrast
- feat: float the connection form as an overlay instead of a fixed panel
- feat: remap file panel keys to match TUI conventions
- feat: quit cleanly on Ctrl+C from any focus state
- fix: space bar key literal broke in the v2 migration
- feat: add U/D to transfer marked files regardless of focus
- feat: migrate to Bubble Tea v2, Lipgloss v2, and Bubbles v2
- feat: use Nerd Font icons for transfer status and direction
- feat: use the Nerd Font icon for the file mark
- feat: wire the --no-nerd-fonts flag
- feat: add a Nerd Font icon toggle
- fix: label log levels with text, not color alone
- fix: give cursor and mark separate columns in the file panel
- fix: truncate log messages by display width
- fix: truncate and pad process filenames by display width
- fix: truncate panel path by display width
- fix: add width-aware truncation helper
- feat: add --version so a downloaded binary can identify itself
- fix(ui): stop the panel rendering from panicking on narrow terminals
- fix(shared): stop the progress wrapper from disabling upload resume
- fix: reject a flag passed where --log-file expects a filename
- feat: add --log-file to keep the log outside the interface
- feat(ui): let the log panel mirror what it shows to a writer
- feat(ui): open the local panel where lazyftp was launched
- fix(transfer): keep a panicking transfer from killing the program
- feat(ui): let Esc abandon a connection attempt
- feat(ui): show a connection attempt in progress
- feat(ui): connect without freezing the interface
- fix(client): say what a refused FTPS connection means
- fix(ui): stop the connection bar crashing on the protocol field
- fix(client): report a failed FTP connection when it happens
- fix(client): bound the SSH handshake, not only the dial
- fix(ui): connect with the chosen protocol instead of guessing from the port
- feat(ui): pick the protocol in the connection bar
- feat(client): choose the protocol instead of inferring it from the port
- feat(client): speak FTPS over the existing FTP client
- fix(ui): stop the local panel crashing when going up a directory
- feat(ui): give the panel path operations that respect the protocol
- fix: bound SSH connection attempts with a dial timeout
- fix: correct visible rows calculation in processes panel
- feat: log the FTP control dialogue behind --verbose
- fix: replace jlaffaye/ftp with secsy/goftp to fix NAT/PASV connectivity
Full notes, including the earlier releases:
https://github.com/MawCeron/lazyftp/blob/main/CHANGELOG.md