Commit Graph

197 Commits

Author SHA1 Message Date
Christian Visintin bd0843d3da build: replace version-compare crate with semver
closes #399
2026-04-19 01:54:46 +05:30
Christian Visintin e062ee0447 chore: format toml 2026-04-19 01:54:46 +05:30
Christian Visintin c81cf39fe9 build: replaced libssh with russh for remotefs-ssh 2026-04-19 01:54:46 +05:30
Christian Visintin 18314e6a2e chore: 1.0.0 version into manifests 2026-04-19 01:54:46 +05:30
Christian Visintin fe424107e9 build: removed hostname, use whoami instead
whoami provides `hostname` function, so we don't need the hostname dependency, since whoami is also being used for getting the username

closes #398
2026-04-19 01:54:46 +05:30
Christian Visintin 4d65e48b3c fix: replace magic-crypt with aes-gcm for bookmark encryption
magic-crypt has known vulnerabilities. Replace it with aes-gcm for new
encryption (authenticated, with random nonces) while keeping a legacy
AES-128-CBC decryption path to transparently handle existing bookmarks.
2026-04-19 01:54:46 +05:30
Christian Visintin bc14b049c0 chore: add centralized lint configuration to Cargo.toml 2026-04-19 01:54:46 +05:30
Christian Visintin d32c588f15 refactor: replace lazy_static with std::sync::LazyLock 2026-04-19 01:54:46 +05:30
Christian Visintin f6d35f1eea refactor: FileTransferActivity pane-agnostic dispatch (#386)
Comprehensive design for incremental refactoring of the 13k-line
FileTransferActivity god-struct using a unified Pane abstraction.
Detailed step-by-step plan covering 6 phases: split monoliths,
error handling, Pane struct, action dedup, session split, view reorg.
Extract 26 popup components from the monolithic 1,868-line popups.rs
into 20 individual files under popups/. Each file contains one or two
related components with their own imports. The popups.rs module file
now contains only module declarations and re-exports.
Replace 8 panic!() calls with error!() logging and early returns/fallthrough.
These panics documented invariants (e.g. "this tab can't do X") but would crash
the app if somehow triggered. Error logging is safer and more resilient.
Replace raw FileExplorer fields in Browser with Pane structs that bundle
the explorer and connected state. Move host_bridge_connected and
remote_connected from FileTransferActivity into the panes. Add navigation
API (fs_pane, opposite_pane, is_find_tab) for future unification tasks.
Rename private get_selected_file to get_selected_file_by_id and add three
new unified methods (get_selected_entries, get_selected_file, is_selected_one)
that dispatch based on self.browser.tab(). Old per-tab methods are kept for
now until their callers are migrated in subsequent tasks.
Collapse _local_/_remote_ action method pairs (mkdir, delete, symlink,
chmod, rename, copy) into unified methods that branch internally on
is_local_tab(). This halves the number of action methods and simplifies
the update.rs dispatch logic. Also unifies ShowFileInfoPopup and
ShowChmodPopup dispatching to use get_selected_entries().
Move `host_bridge` and `client` filesystem fields from FileTransferActivity
into the Pane struct, enabling tab-agnostic dispatch via `fs_pane()`/
`fs_pane_mut()`. This eliminates most `is_local_tab()` branching across
15+ action files.
Key changes:
- Add `fs: Box<dyn HostBridge>` to Pane, remove from FileTransferActivity
- Replace per-side method pairs with unified pane-dispatched methods
- Unify navigation (changedir, reload, scan, file_exists, has_file_changed)
- Replace 147-line popup if/else chain with data-driven priority table
- Replace assert!/panic!/unreachable! with proper error handling
- Fix typo "filetransfer_activiy" across ~29 files
- Add unit tests for Pane

Net result: -473 lines, single code path for most file operations.
2026-04-19 01:54:46 +05:30
Christian Visintin b04976bde3 fix: Updated dependencies to allow build on NetBSD
closes #371
2025-12-20 16:33:50 +01:00
Christian Visintin f4156a5059 feat: Import bookmarks from ssh config with a CLI command (#364)
Linux / build (push) Has been cancelled
MacOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
* feat: Import bookmarks from ssh config with a CLI command

Use import-ssh-hosts to import all the possible hosts by the configured ssh config or the default one on your machine

closes #331
2025-11-08 15:32:52 +01:00
veeso 205d2813ad perf: Migrated to libssh.org on Linux and MacOS for better ssh agent support.
Linux / build (push) Has been cancelled
MacOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
closes #337
2025-09-20 18:13:20 +02:00
veeso 86660a0cc9 fix: SMB support for MacOS with vendored build of libsmbclient.
closes #334
2025-09-20 18:07:26 +02:00
veeso 3c79e812eb build: 0.19 deps 2025-09-06 16:40:01 +02:00
Christian Visintin c0b32a1847 feat: Replaced the Exec popup with a fully functional terminal emulator (#348)
Linux / build (push) Waiting to run
MacOS / build (push) Waiting to run
Windows / build (push) Waiting to run
* feat: Replaced the `Exec` popup with a fully functional terminal emulator

closes #340

* fix: colors and fmt for terminal

* feat: Handle exit and cd on terminal

* fix: Fmt pah
2025-06-10 13:17:20 +02:00
veeso 783da22ca2 feat: **Updated dependencies** and updated the Rust edition to 2024 2025-06-08 18:00:42 +02:00
veeso 9a5caf75c3 build: so apparently native-tls vendored tries to build openssl on windows, wtf guys?
Linux / build (push) Has been cancelled
MacOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2025-03-23 18:07:20 +01:00
Christian Visintin 23ae334bef ci(build): build vendored smb and refactor platform deps (#333) 2025-03-23 15:57:54 +01:00
veeso 368570592f feat(cli): added --wno-keyring flag to disable keyring
Linux / build (push) Waiting to run
MacOS / build (push) Waiting to run
Windows / build (push) Waiting to run
closes #308
2025-03-22 13:44:02 +01:00
veeso a18eff689d fix(aws-s3): updated remotefs-aws-s3 to 0.4.1
Linux / build (push) Waiting to run
MacOS / build (push) Waiting to run
Windows / build (push) Waiting to run
should fix #329
2025-03-16 20:06:35 +01:00
veeso 274742d6d9 build: bump to ssh2-config 0.4 and remotefs 0.6 to have support for Include in config files
Linux / build (push) Waiting to run
MacOS / build (push) Waiting to run
Windows / build (push) Waiting to run
fix #309
2025-03-15 20:04:21 +01:00
veeso b0f314837e build(deps): updated dependencies and edition to 2024 2025-03-15 14:15:45 +01:00
veeso f2efb25ad7 fix: 0.16.1
Install.sh / build (push) Waiting to run
Linux / build (push) Waiting to run
MacOS / build (push) Waiting to run
Windows / build (push) Waiting to run
2024-11-12 12:34:26 +01:00
Christian Visintin 7eb913ec7b fix: tuirealm 2.x (#299) 2024-10-14 09:55:52 +02:00
Christian Visintin e5d50698d2 fix: vergen (#296) 2024-10-07 17:49:52 +02:00
Christian Visintin 79c31c2d84 fix: Use uzers instead of the dead package users which has several vulnerabilities (#295) 2024-10-07 17:40:35 +02:00
veeso a4c9acb49f feat: version 0.16 2024-10-05 17:41:40 +02:00
veeso 6205c7f3c5 fix: include build.rs
Install.sh / build (push) Has been cancelled
Linux / build (push) Has been cancelled
MacOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2024-10-03 17:57:49 +02:00
Christian Visintin 8e2ffeabce fix: isolated-tests feature to run tests for releasing on distributions which run in isolated environments (#286)
* fix: `isolated-tests` feature to run tests for releasing on distributions which run in isolated environments

* fix: cond
2024-10-03 12:17:03 +02:00
Christian Visintin b2a8a3041c 249 feature request better search results (#282)
Linux / build (push) Has been cancelled
MacOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
* feat: issue 249 - fuzzy search replaced the old find explorer

* fix: forgot to upload file

* fix: removed debug
2024-10-02 17:45:48 +02:00
Christian Visintin ae1638ee17 feat: Pods and container explorer for Kube protocol (#281) 2024-10-02 12:24:46 +02:00
veeso c5f76ec51c fix: bump vers 2024-10-02 10:33:42 +02:00
veeso d319a2fae4 fix: notify 6 2024-10-02 10:25:30 +02:00
veeso 17719ea370 feat: init 0.15 2024-09-30 12:06:03 +02:00
veeso dfe58e6147 fix: tokio rt builder
Coverage / build (push) Has been cancelled
Install.sh / build (push) Has been cancelled
Linux / build (push) Has been cancelled
MacOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2024-07-22 10:36:16 +02:00
Christian Visintin f757336d75 feat: kube protocol support (#267) 2024-07-17 11:59:30 +02:00
Christian Visintin 631f09b9a8 feat: issue 256 - filter files (#266) 2024-07-15 15:08:22 +02:00
veeso 9036d83635 fix: remotefs-ssh 0.3.1
Coverage / build (push) Has been cancelled
Linux / build (push) Has been cancelled
MacOS / build (push) Has been cancelled
Windows / build (push) Has been cancelled
2024-07-09 12:25:47 +02:00
Christian Visintin 179c4de4ed feat: ssh-agent (#264) 2024-07-09 11:55:17 +02:00
veeso 44051ec718 feat: termscp 0.13.0 2024-03-02 19:28:01 +01:00
Christian Visintin c7469b8594 feat: WebDAV support (#235) 2024-03-02 19:23:27 +01:00
veeso 5dfee2cbd9 fix: AWS S3 wasn't working anymore due to rust-s3 outdate 2024-03-01 17:02:58 +01:00
veeso d30c3dfadd force tuirealm 1.8 2023-10-06 22:03:08 +02:00
veeso ef8dbb6305 0.12.3 2023-10-06 09:19:03 +02:00
veeso ea9dd03f55 Revert "feat: tui-realm 1.9"
This reverts commit cfbecc049d.
2023-10-06 09:13:57 +02:00
veeso 182bbb94a2 0.12.2 2023-10-01 16:12:47 +02:00
veeso cfbecc049d feat: tui-realm 1.9 2023-08-23 09:18:09 +02:00
veeso 2f48c765e3 termscp 0.12.0 2023-07-06 16:17:33 +02:00
Christian Visintin a071f3d420 feat: smb is now an optional feature (#200) 2023-07-06 11:02:53 +02:00
veeso 66888c418c fix: deps 2023-07-06 09:59:25 +02:00