Commit Graph

114 Commits

Author SHA1 Message Date
Jack Wills a1f31c6c88 fix: update_redraw on delete container change 2025-02-23 14:24:04 +00:00
Jack Wills 7e4a960b88 feat: update Rust edition to 2024 2025-02-21 22:45:06 +00:00
Jack Wills bfc295c50e fix: Only re-draw the screen if data/layout has changed 2025-02-21 16:40:34 +00:00
Jack Wills 17a5e7a258 feat: set log timezone, closes #56
Implement a CLI arg, and config file setting, for changing the timezone of the Docker logs timestamp
2025-02-21 11:03:19 +00:00
Jack Wills f4d54e1ba8 feat: config file, closes #47
Enable use of a config file, with custom keymap and custom colours
2025-02-16 12:54:35 +00:00
Jack Wills 3065265e26 chore: Rust 1.84 linting 2025-01-09 16:40:17 +00:00
Jack Wills caf23be4a7 refactor: dead code removed 2024-12-05 17:48:24 +00:00
Jack Wills d4906d33c2 fix: DockerData spawns insertion error.
Previously incorrectly checking spawn entry in the hashmap, now use VacantEntry matching before spawning a tokio thread
2024-12-05 15:25:16 +00:00
Jack Wills 55cc746736 refactor: update_container_stat combine is_alive() 2024-12-04 10:10:44 +00:00
Jack Wills 1b26997d25 feat: ContainerPorts use ipaddr 2024-12-03 20:39:51 +00:00
Jack Wills e5927f781a refactor: Remove numerous clones()
get_container_name_by_id clone, init_all_log refactor to remove clones,
remove id.clone() by using SpawnId.get_id()
2024-12-03 19:54:02 +00:00
Jack Wills c739637b91 feat: --no-stderr cli arg, closes #52
New cli argument which will remove stderr output from logs, defaults to false
2024-12-03 15:01:56 +00:00
Jack Wills 751d997a3d chore: Rust 1.83 linting 2024-11-28 14:27:47 +00:00
Jack Wills 7f42383495 refactor: input_handler 2024-11-16 14:50:25 +00:00
Jack Wills 8b9fe42468 refactor: massively speed up docker init process 2024-11-16 14:13:56 +00:00
Jack Wills fe3696e557 refactor: use check_sub for sleep calculations 2024-11-15 16:44:10 +00:00
Jack Wills 68a6551ed0 refactor: rename scheduler to heartbeat 2024-11-15 16:36:32 +00:00
Jack Wills 76ccf7c006 refactor: remove uneccessary is_running load 2024-11-15 16:30:02 +00:00
Jack Wills f0b1145651 refactor: pointless code removed 2024-11-15 16:12:54 +00:00
Jack Wills 5106a01f3d fix: calculate_usage overflow
Remove overflow path from calculate_usage, update & simplify tests for this function
2024-11-15 15:48:39 +00:00
Jack Wills 2a834d6c2f refactor: execute_command()
Include Id and DockerCommand in a DockerMessage, used by the execute_command function to reduce duplicated code
2024-11-15 15:39:06 +00:00
Vincent Masse b95c931141 Add Stderr output to Logs 2024-09-17 20:11:48 -04:00
Jack Wills 578ed9f085 revert: expect lint
Expect lint was causing issues with crates/docker builds, revert until fix is found
2024-09-07 21:25:14 +00:00
Jack Wills 2a0ab6d81c refactor: switch lints from allow(x) to expect(x)` 2024-09-06 22:48:36 +00:00
Jack Wills de87681816 feat: unhealthy status, closes #43
Highlight an unhealthy container in Orange, and display "! running" as the state,

refactor: Move dev Docker files to docker directory
2024-08-01 21:35:37 +00:00
Jack Wills 93e1279b1f chore: Rust 1.80 linting 2024-07-25 14:30:24 +00:00
Jack Wills d5d8a0dbc5 feat: filter containers, closes #37
Enable filtering of containers, toggled by pressing `F1` or `/`, build on PR #38 from MohammadShabaniSBU
2024-07-12 15:43:42 +00:00
Jack Wills a182d40a74 fix: memory display, closes #33
Memory usage calculation now uses correct methodology
2024-02-12 17:40:28 +00:00
Jack Wills d33dce3eec chore: update to ratatui v0.26.0 2024-02-05 22:11:49 +00:00
Jack Wills 65a1afcb06 feat: Added ports section, closes #21 2024-01-18 14:30:54 +00:00
Jack Wills 53543a1b72 tests: gui tests 2024-01-16 10:38:22 +00:00
Jack Wills b9df4e446a tests: AppData tests 2024-01-13 22:51:42 +00:00
Jack Wills e936bb4b78 feat: re-arrange columns + ContainerName + ContainerImage, closes #32
Have container name as first column.
Wrap name and image using the StringWrapper macro, so that can have a custom fmt::Display, which will only show the firs 29 chars of both the name and image name
2024-01-05 13:16:06 +00:00
Jack Wills 56dba91e9a refactor: variable name changes 2023-11-19 23:03:41 +00:00
Jack Wills 0e5ee143b0 feat: exec mode improvements
Use Bollard library to exec in pure Rust.

`--use-cli` cli arg, will then only try to exec into containers using
Docker.

Only try to exec into a container if the state == Running.
2023-11-18 22:44:39 +00:00
Jack Wills 40090865fd refactor: Multiple UI improvements;
Use FrameData struct to store commonly accessed data, in order to
reduce mutex locks.

rename unpause to resume

use get_selected_panel() function instead of directly
gui_state.selected_panel

debug mode now shows some usefull information
2023-11-16 11:19:42 +00:00
Jack Wills 650aa0fc91 refactor: DockerData refactors
Use a croner in the docker_data, instead of in the ui thread, as this thread will be paused when in exec mode.

is_initilised is again done in docker_data, after stats have been calculated

use bollard from git, waiting for new release due to Docker changes
2023-11-16 11:19:42 +00:00
Jack Wills c8077bca0b feat: Docker exec mode, closes #28 2023-11-16 11:19:09 +00:00
Jack Wills ca79893df5 refactor: from string impl
Remove redudant impl's, use `.as_str()`
2023-09-17 18:41:10 +00:00
Jack Wills 76fd178894 chore: release v0.3.2 2023-08-28 13:32:34 +00:00
Jack Wills 62c78dfaa5 refactor: set_error take gui_state
insert into gui_state status when setting error
2023-08-26 12:40:53 +00:00
Jack Wills 2e27462d1b refactor: loading_spin fn remove async 2023-08-24 16:26:30 +00:00
Jack Wills 1095078764 feat: Docker Host env, closes #30
oxker will check for an optional cli_arg `--host`, then the $DOCKER_HOST env, and if found use for connection.

Fix unresponsiveness in debug mode when error set
2023-08-17 15:34:18 +00:00
Jack Wills 3b61a704e2 feat: Clippy mem drop,
re-arrange .lock() ordering, and use `value_capture!`, to satisfy has_significant_drop rule
2023-06-14 20:47:24 +00:00
Jack Wills b9c125da46 fix: out of bound bug in heading_bar
use a `saturating_sub` to calculate the column_width
2023-03-30 02:22:47 +00:00
Jack Wills 937202fe34 feat: delete container, closes #27
Enable a user to delete a container. A dialog will pop up to ask the user to confirm the deletion. A user can then click on either button, or press N/Y to make a selection
2023-03-30 02:12:03 +00:00
Jack Wills 8ba37a165b refactor: reaplace unwrap_or(()) with .ok() 2023-03-09 15:18:00 +00:00
Jack Wills 5582c45403 chore: Rust 1.68.0 clippy linting 2023-03-09 15:12:51 +00:00
Jack Wills 0a1b531116 feat: Acutal fix the the mouse events output
The EnableMouseCapture from Crossterm was too broad, by only enabling a subject of the events, 1) performance is improvedand 2) and intermittent bug where mouse events were output to stdout has been removed
2023-03-02 01:09:17 +00:00
Jack Wills b8f5792d18 refactor: dead code removed 2023-03-01 19:18:36 +00:00