Released on 06/01/2022
❄️ Winter update 2022 ⛄
- Enhancements:
- Synchronized browsing:
- From now on, if synchronized browsing is enabled and you try to enter a directory that doesn't exist on the other host, you will be asked whether you'd like to create the directory.
- Find feature:
- A "wait popup" will now be displayed while searching files
- If find command doesn't return any result show an info dialog and not an empty explorer
- It is now possible to keep navigating on the other explorer while "found tab" is open
- ❗ It is not possible though to have the "found tab" on both explorers (otherwise you wouldn't be able to tell whether you're transferring files)
- Files found from search are now displayed with their relative path from working directory
- Ui:
- Transfer abortion is now more responsive
- Selected files will now be rendered with Reversed, underlined and italic text modifiers instead of being prepended with
*
. - Error popup message height is now calculated based on the content it must display.
- Midnight commander keys
<F1>
: Show help<F2>
: Save file as (actually I invented this)<F3>
: View file<F4>
: Open file (with text editor)<F5>
: Copy file<F6>
: Rename file<F7>
: Make directory<F8>
: Remove file<F10>
: Quit
- Added footer with most used key bindings
- ❗
<TAB>
will now switch explorer tab (will do what<LEFT>
and<RIGHT>
currently do) - ❗ Use
<BACKTAB>
to switch between explorer tab and log tab. ❗ Backtab is<SHIFT + TAB>
- Tui-realm migration:
- migrated application to tui-realm 1.x
- Improved application performance
- Changed the buffer size to 65535 (was 65536) for transfer I/O
- Synchronized browsing:
- Aws s3 connection parameters extension 🦊:
- Added
Access Key
to Aws-s3 connection parameters - Added
Security Access Key
to Aws-s3 connection parameters - Added
Security token
to Aws-s3 connection parameters - Added
Session token
to Aws-s3 connection parameters
- Added
- SSH Config
- Added
ssh config
parameter in configuration - It is now possible to specify the ssh configuration file to use
- The supported parameters are described at https://github.com/veeso/ssh2-config.
- If the field is left empty, no file will be loaded.
- By default, no file will be used.
- Added
- Symlink command:
- You can now create symlinks, pressing
<K>
key on the file explorer.
- You can now create symlinks, pressing
- Less verbose logging:
- By default the log level is now set to
INFO
- It is now possible to enable the
TRACE
level with the-D
CLI option.
- By default the log level is now set to
- Dependencies:
- Added
unicode-width 0.1.8
- Updated
argh
to0.1.7
- Updated
keyring
to1.0.0
- Updated
magic-crypt
to3.1.9
- Updated
open
to2.0.2
- Updated
notify-rust
to4.5.5
- Updated
self_update
to0.28.0
- Updated
simplelog
to0.11.1
- Updated
tempfile
to3.2.0
- Updated
tui-realm
to1.4.2
- Updated
tui-realm-stdlib
to1.1.5
- Updated
whoami
to1.2.1
- Updated
wildmatch
to2.1.0
- Removed
rust-s3
,ssh2
,suppaftp
; replaced byremotefs 0.2.0
,remotefs-aws-s3 0.1.0
,remotefs-ftp 0.1.0
andremotefs-ssh 0.1.0
- Removed
crossterm
(since bridged by tui-realm) - Removed
textwrap
(unused)
- Added
Released on 12/10/2021
🍁 Autumn update 2021 🍇
- Aws S3 🪣
- Added support for the aws-s3 protocol.
- Operate on your bucket directly from the file explorer.
- You can also save your buckets as bookmarks.
- Aws s3 reads credentials directly from your credentials file at
$HOME/.aws/credentials
or from environment. Read more in the user manual.
- Auto update ⬇️
- Possibility to update termscp directly via GUI or CLI.
- Install update via CLI running
(sudo) termscp --update
. - Install update via GUI from auth form: when the "new version message" is displayed press
<CTRL+R>
, then enterYES
in the radio input asking whether to install the update.
- Notifications 📫
- termscp will now send Desktop notifications in these cases
- on transfer completed (minimum transfer size can be specified in configuration; default 512MB)
- on transfer error (same as above)
- on update available
- Added "notifications enabled" in configuration (Default enabled)
- Added "Notifications: minimum transfer size": if transfer size is greater or equal than the specified value, notifications for transfer will be displayed.
- termscp will now send Desktop notifications in these cases
- Prompt user when about to replace existing file on a file transfer ❓
- Whenever a file transfer is about to replace an existing file on local/remote host, you will be prompted if you're sure you really want to replace that file.
- You may want to disable this option. You can go to configuration and set "Prompt when replacing existing files?" to "NO"
- ❗ BREAKING CHANGES ❗:
- Added a new key in themes:
misc_info_dialog
: if your theme won't load, just reload it. If you're using a customised theme, you can add to it the missing key via a text editor. Just edit thetheme.toml
in your$CONFIG_DIR/termscp/theme.toml
and addmisc_info_dialog
(Read more in manual at Themes).
- Added a new key in themes:
- Enhancements:
- Reuse mounts in UI, in order to reduce executable size
- File list can now be "rewinded", which means that moving with arrows will now allow you to go from top to bottom of the list pressing
<UP>
and viceversa pressing<DOWN>
.
- Bugfix:
- Fixed Issue 70: Unable to type characters with
CTRL+ALT
(e.g. italian layoutCTRL+ALT+ò
=>@
) due to a crossterm issue. Fixed with tui-realm-stdlib0.6.3
.
- Fixed Issue 70: Unable to type characters with
- Dependencies:
- Added
notify_rust 4.5.3
- Added
rust-s3 0.27-rc4
- Added
self_update 0.27.0
- Updated
argh
to0.1.6
- Updated
dirs
to4.0.0
- Updated
tui-realm-stdlib
to0.6.3
- Removed
ureq
- Added
Released on 31/08/2021
- Enhancements:
- Now that tui-rs supports title alignment, UI has been improved
- Added new
Directory already exists
variant for file transfer errors
- Bugfix:
- Dependencies:
- Updated
bitflags
to1.3.2
- Updated
bytesize
to1.1.0
- Updated
crossterm
to0.20
- Updated
open
to2.0.1
- Added
tui-realm-stdlib 0.6.0
- Replaced
ftp4
withsuppaftp 4.1.2
- Updated
tui-realm
to0.6.0
- Updated
Released on 23/07/2021
🍹 Summer update 2021 🍨
- Open any file in explorer:
- Open file with default program for file type with
<V>
- Open file with a specific program with
<W>
- Open file with default program for file type with
- Themes:
- You can now set colors for 26 elements in the application
- Colors can be any RGB, also CSS colors syntax is supported (e.g.
aquamarine
) - Configure theme from settings or import from CLI using the
-t <theme file>
argument - You can find several themes in the
themes/
directory
- Keyring support for Linux
- From now on keyring will be available for Linux only
- Read the manual to find out if your system supports the keyring and how you can enable it
- libdbus is now a dependency
- added
with-keyring
feature - ❗ BREAKING CHANGE ❗: if you start using keyring on Linux, all the saved password will be lost
- In-app release notes
- Possibility to see the release note of the new available release whenever a new version is available
- Just press
<CTRL+R>
when a new version is available from the auth activity to read the release notes
- Installation script:
- From now on, in case cargo is used to install termscp, all the cargo dependencies will be installed
- Start termscp from configuration: Start termscp with
-c
or--config
to start termscp from configuration page - Enhancements:
- Show a "wait" message when deleting, copying and moving files and when executing commands
- Replaced all
...
with…
in texts - Check if remote host is valid in authentication form
- Check if port number is valid in authentication form
- From now on, if you try to leave setup without making any change, you won't be prompted whether to save configuration or not
- Bugfix:
- Fixed broken input cursor when typing UTF8 characters (tui-realm 0.3.2)
- Fixed save bookmark dialog: you could switch out from dialog with
<TAB>
- Fixed transfer interruption: it was not possible to abort a transfer if the size of the file was less than 65k
- Changed
Remote address
toRemote host
in authentication form
- Dependencies:
- Added
argh 0.1.5
- Added
open 1.7.0
- Removed
getopts
- Updated
rand
to0.8.4
- Updated
textwrap
to0.14.2
- Updated
tui-realm
to0.4.3
- Added
Released on 21/06/2021
- Enhancements:
- CI now uses containers to test file transfers (SSH/FTP)
- Improved coverage
- Found many bugs which has now been fixed
- Build in CI won't fail due to test servers not responding
- We're now able to test all the functionalities of the file transfers
- Status bar improvements
- "Show hidden files" in status bar
- Status bar has now been splitted into two, one for each explorer tab
- Error message if terminal window is too small
- If the terminal window has less than 24 lines, then an error message is displayed in the auth activity
- Changed auth layout to absolute sizes
- CI now uses containers to test file transfers (SSH/FTP)
- Bugfix:
- Fixed UI not showing connection errors
- Fixed termscp on Windows dying whenever opening a file with text editor
- Fixed broken input cursor when typing UTF8 characters (tui-realm 0.3.2)
- Fixed Issue 44: Could not move files to other paths in FTP
- Fixed Issue 43: Could not remove non-empty directories in FTP
- Fixed Issue 39: Help panels as
ScrollTable
to allow displaying entire content on small screens - Fixed Issue 38: Transfer size was wrong when transferring "selected" files (with mark)
- Fixed Issue 37: progress bar not visible when editing remote files
- Dependencies:
- Updated
textwrap
to0.14.0
- Updated
tui-realm
to0.4.2
- Updated
Released on 23/05/2021
🌸 Spring Update 2021 🌷
- Synchronized browsing:
- Added the possibility to enabled the synchronized brower navigation
- when you enter a directory, the same directory will be entered on the other tab
- Enable sync browser with
<Y>
- Read more on manual: Synchronized browsing
- Added the possibility to enabled the synchronized brower navigation
- Remote and Local hosts file formatter:
- Added the possibility to set different formatters for local and remote hosts
- Work on multiple files:
- Added the possibility to work on multiple files simultaneously
- Select a file with
<M>
, the file when selected will have a*
prepended to its name - Select all files in the current directory with
<CTRL+A>
- Read more on manual: Work on multiple files
- Logging:
- termscp now writes a log file, useful to debug and to contribute to fix issues.
- Read more on manual
- File transfer changes
- SFTP
- Added COPY command to SFTP (Please note that Copy command is not supported by SFTP natively, so here it just uses the
cp
shell command as it does in SCP).
- Added COPY command to SFTP (Please note that Copy command is not supported by SFTP natively, so here it just uses the
- FTP
- Added support for file copy (achieved through tricky-copy: the file is first downloaded, then uploaded with a different file name)
- SFTP
- Double progress bar:
- From now one two progress bar will be displayed:
- the first, on top, displays the full transfer state (e.g. when downloading a directory of 10 files, the progress of the entire transfer)
- the second, on bottom, displays the transfer of the individual file being written (as happened for the old versions)
- changed the progress bar colour from
LightGreen
toGreen
- From now one two progress bar will be displayed:
- Enhancements
- Added a status bar in the file explorer showing whether the sync browser is enabled and which file sorting mode is selected
- Removed the goold old figlet title
- Protocol input as first field in UI
- Port is now updated to standard for selected protocol
- when you change the protocol in the authentication form and the current port is standard (
< 1024
), the port will be automatically changed to default value for the selected protocol (e.g. current port:123
, protocol changed toFTP
, port becomes21
)
- when you change the protocol in the authentication form and the current port is standard (
- Bugfix:
- Fixed wrong text wrap in log box
- Fixed empty bookmark name causing termscp to crash
- Fixed error message not being shown after an upload failure
- Fixed default protocol not being loaded from config
- Issue 23: Remove created file if transfer failed or was abrupted
- Dependencies:
- Added
tui-realm 0.3.0
- Removed
tui
(as direct dependency) - Updated
regex
to1.5.4
- Added
Released on 13/04/2021
- Enhancements:
- Use highlight symbol for logbox of
tui-rs
instead of adding aSpan
- Use highlight symbol for logbox of
- Bugfix:
- removed
eprintln!
in ftp transfer causing UI to break in Windows
- removed
Released on 07/04/2021
- Enhancements:
- SCP file transfer:
- Added possibility to stat directories.
- SCP file transfer:
- Bugfix:
- Dependencies:
- Added
path-slash 0.1.4
(Windows only) - Added
thiserror 1.0.24
- Updated
edit
to0.1.3
- Updated
magic-crypt
to3.1.7
- Updated
rand
to0.8.3
- Updated
regex
to1.4.5
- Updated
textwrap
to0.13.4
- Updated
ureq
to2.1.0
- Updated
whoami
to1.1.1
- Updated
wildmatch
to2.0.0
- Added
Released on 27/03/2021
The UI refactoring update
- New explorer features:
- Execute a command pressing
X
. This feature is supported on both local and remote hosts (only SFTP/SCP protocols support this feature). - Find: search for files pressing
F
using wild matches.
- Execute a command pressing
- Enhancements:
- Input fields will now support "input keys" (such as moving cursor, DEL, END, HOME, ...)
- Improved performance regarding configuration I/O (config client is now shared in the activity context)
- Fetch latest version from Github once; cache previous value in the Context Storage.
- Bugfix:
- Prevent resetting explorer index on remote tab after performing certain actions (list dir, exec, ...)
- SCP file transfer: prevent infinite loops while performing
stat
on symbolic links pointing to themselves (e.g.mylink -> mylink
) - Fixed a bug causing termscp to crash if removing a bookmark
- Fixed file format cursor position in the GUI
- Fixed a bug causing termscp to show two equal bookmarks when overwriting one.
- Fixed system tests which deleted the termscp configuration when launched
- LICENSE: changed license to MIT
- Dependencies:
- Removed
unicode-width
- Added
wildmatch 1.0.13
- Removed
- For developers:
- Activity refactoring
- Developed an internal library used to create components, components are then nested inside a View
- The new engine works through properties and states, then returns Messages. I was inspired by both React and Elm.
- Activity refactoring
Released on 28/02/2021
- Format key attributes:
- Added
EXTRA
andLENGTH
parameters to format keys. - Now keys are provided with this syntax
{KEY_NAME[:LEN[:EXTRA]}
- Added
- Check for updates:
- termscp will now check for updates on startup and will show in the main page if there is a new version available
- This feature may be disabled from setup (Check for updates => No)
- Enhancements:
- Default choice for deleting file set to "NO" (way too easy to delete files by mistake)
- Added CLI options to set starting workind directory on both local and remote hosts
- Parse remote host now uses a Regex to gather parts (increased stability).
- Now bookmarks and recents are sorted in the UI (bookmarks are sorted by name; recents are sorted by connection datetime)
- Improved stability
Released on 24/01/2021
- Explorer Formatter:
- Added possibility to customize the format when listing files in the explorers (Read more on README)
- Added
file_fmt
key to configuration (if missing, default will be used). - Added the text input to the Settings view to set the value for
file_fmt
.
- Bugfix:
- Solved file index in explorer files at start of termscp, in case the first entry is an hidden file
- SCP File transfer: when listing directory entries, check if a symlink points to a directory or to a file
- Dependencies:
- updated
crossterm
to0.19.0
- updated
rand
to0.8.2
- updated
rpassword
to5.0.1
- updated
serde
to1.0.121
- updated
tui
to0.14.0
- updated
whoami
to1.1.0
- updated
Released on 18/01/2021
- Keyring to store secrets
- On both MacOS and Windows, the secret used to encrypt passwords in bookmarks it is now store in the OS secret vault. This provides much more security to store the password
- Enhancements:
- Added connection timeout to 30 seconds to SFTP/SCP clients and improved name lookup system.
- Bugfix:
- Solved index in explorer files list which was no more kept after 0.3.0
- SCP file transfer: fixed possible wrong file size when sending file, due to a possible incoherent size between the file explorer and the actual file size.
- Breaking changes: on MacOS / Windows systems only, the password you saved for bookmarks won't be working anymore if you have support for the keyring crate. Because of the migration to keyring, the previously used secret hasn't been migrated to the storage, instead a new secret will be used. To solve this, just save the bookmark again with the password.
Released on 10/01/2021
The SSH Key Storage Update
- SSH Key Storage
- Added the possibility to store SSH private keys to access to remote hosts; this feature is supported in both SFTP and SCP.
- SSH Keys can be manipulated through the new Setup Interface
- Setup Interface
- Added a new area in the interface, where is possible to customize termscp. Access to this interface is achieved pressing
<CTRL+C>
from the home page (AuthActivity
).
- Added a new area in the interface, where is possible to customize termscp. Access to this interface is achieved pressing
- Configuration:
- Added configuration; configuration is stored at
- Linux:
/home/alice/.config/termscp/config.toml
- MacOS:
/Users/Alice/Library/Application Support/termscp/config.toml
- Windows:
C:\Users\Alice\AppData\Roaming\termscp\config.toml
- Linux:
- Added Text editor to configuration
- Added Default File transfer protocol to configuration
- Added "Show hidden files" to configuration
- Added "Group directories" to configuration
- Added SSH keys to configuration; SSH keys will be stored at
- Linux:
/home/alice/.config/termscp/.ssh/
- MacOS:
/Users/Alice/Library/Application Support/termscp/.ssh/
- Windows:
C:\Users\Alice\AppData\Roaming\termscp\.ssh\
- Linux:
- Added configuration; configuration is stored at
- Enhancements:
- Replaced
sha256
sum with last modification time check, to verify if a file has been changed in the text editor - FTP
- Added
LIST
command parser for Windows server (DOS-like syntax)
- Added
- Default protocol changed to default protocol in configuration when providing address as CLI argument
- Explorers:
- Hidden files are now not shown by default; use
A
to show hidden files. - Append
/
to directories name.
- Hidden files are now not shown by default; use
- Replaced
- Keybindings:
A
: Toggle hidden filesB
: Sort files by (name, size, creation time, modify time)N
: New file
- Bugfix:
- SCP client didn't show file types for files
- FTP client didn't show file types for files
- FTP file transfer not working properly with
STOR
andRETR
. - Fixed
0 B/S
transfer rate displayed after completing download in less than 1 second
- Dependencies:
- added
bitflags 1.2.1
- removed
data-encoding
- updated
ftp
to4.0.2
- updated
rand
to0.8.0
- removed
ring
- updated
textwrap
to0.13.1
- updated
toml
to0.5.8
- updated
whoami
to1.0.1
- added
Released on 21/12/2020
The Bookmarks Update
- Bookmarks
- Bookmarks and recent connections are now displayed in the home page
- Bookmarks are saved at
- Linux:
/home/alice/.config/termscp/bookmarks.toml
- MacOS:
/Users/Alice/Library/Application Support/termscp/bookmarks.toml
- Windows:
C:\Users\Alice\AppData\Roaming\termscp\bookmarks.toml
- Linux:
- Text Editor
- Added text editor feature to explorer view
- Added
o
to keybindings to open a text file
- Keybindings:
C
: Copy file/directoryO
: Open text file in editor
- Enhancements:
- User interface
- Collpased borders to make everything more aesthetic
- Rounded input field boards
- File explorer:
- Log how long it took to upload/download a file and the transfer speed
- Display in progress bar the transfer speed (bytes/seconds)
- User interface
- Bugfix:
- File mode of file on remote is now reported on local file after being downloaded (unix, linux, macos only)
- Scp: when username was not provided, it didn't fallback to current username
- Explorer: fixed UID format in Windows
Released on 14/12/2020
- Enhancements:
- File transfer:
- Read buffer is now 65536 bytes long
- File explorer:
- Fixed color mismatch in local explorer
- Explorer tabs have now 70% of layout height, while logging area is 30%
- Highlight selected entry in tabs, only when the tab is active
- Auth page:
- align popup text to center
- File transfer:
- Keybindings:
L
: Refresh directory content
- Bugfix:
- Fixed memory vulnerability in Windows version
Released on 13/12/2020
- General performance and code improvements
- Improved symlinks management
- Possibility to abort file transfers
- Enhancements:
- File explorer:
- When file index is at the end of the list, moving down will set the current index to the first element and viceversa.
- Selected file has now colourful background, instead of foreground, for a better readability.
- File explorer:
- Keybindings:
E
: Delete file (Same asDEL
); added because some keyboards don't haveDEL
(hey, that's my MacBook Air's keyboard!)Ctrl+C
: Abort transfer process
Released on 10/12/2020
- enhancements:
- password prompt: ask before performing terminal clear
- file explorer:
- file names are now sorted ignoring capital letters
- file names longer than 23, are now cut to 20 and followed by
...
- paths which exceed tab size in explorer are elided with the following formato
ANCESTOR[1]/.../PARENT/DIRNAME
- keybindings:
I
: show info about selected file or directory- Removed
CTRL
; just use keys now.
- bugfix:
- prevent panic in set_progress, for progress values
> 100.0 or < 0.0
- Fixed FTP get, which didn't finalize the reader
- prevent panic in set_progress, for progress values
- dependencies:
- updated
textwrap
to0.13.0
- updated
ftp4
to4.0.1
- updated
Released on 06/12/2020
- First release