Commit Graph

167 Commits

Author SHA1 Message Date
Jack Wills ffac05a9cd chore: release v0.7.0 2024-08-01 21:59:45 +00:00
Jack Wills 12f24357a6 feat: place image name in logs panel title 2024-08-01 21:35:43 +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 2cc2a65d57 tests: fix layout tests with new left alignment 2024-07-26 22:47:19 +00:00
Jack Wills 38a2c52247 Merge branch 'aljazerzen-left-align' into dev 2024-07-25 16:06:59 +00:00
Jack Wills 9e5cf68b8f fix: colum width minimums 2024-07-24 21:02:56 +00:00
Jack Wills 26a2cf55d2 feat: advanced filtering
Allow filtering by name, image name, status, or a combination of all of the three
2024-07-24 14:20:29 +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 93d857eb04 chore: Rust 1.78.0 linting 2024-05-02 13:38:37 +00:00
Jack Wills e7845ae6f0 docs: typos 2024-02-14 14:24:48 +00:00
Jack Wills 1f62bb5021 refactor: use &[T] instead of &Vec<T> 2024-02-14 14:21:28 +00:00
Jack Wills 76cd08ab2f refactor: return &[T] instead of &Vec<T> 2024-02-05 22:30:30 +00:00
Jack Wills d33dce3eec chore: update to ratatui v0.26.0 2024-02-05 22:11:49 +00:00
Jack Wills 0436ff1b73 refactor: draw_block constaints into consts 2024-01-23 21:43:06 +00:00
Jack Wills 7a096a65c4 fix: ports display tweak, plus test 2024-01-18 18:48:33 +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 a34c046dee fix: is_oxker_in_container()
Check is both is_oxker and running in a container, so that oxker container commands will only be ignored if both are true
2024-01-13 23:01:22 +00:00
Jack Wills b9df4e446a tests: AppData tests 2024-01-13 22:51:42 +00:00
Jack Wills 27cf53e41f refactor: rename string_wrapper > unit_struct 2024-01-06 22:05:16 +00:00
Jack Wills a722731c6a refactor: string_wrapper .get() return &str 2024-01-05 14:14:55 +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 ccf8b55a74 refactor: sort_containers 2024-01-02 19:02:36 +00:00
Jack Wills 56dba91e9a refactor: variable name changes 2023-11-19 23:03:41 +00:00
Jack Wills cd1da2ad96 fix: State ordering use .order() 2023-11-19 22:52:43 +00:00
Jack Wills a15da5ed43 feat: export logs feature, closes #1
Save logs to a file.
 `--logs-dir` cli arg to change from the default location.

Refactor of input_handler
2023-11-19 22:25:28 +00:00
Jack Wills 3a6489396e fix: sort created_at clash, closes #22
Additionally sort by name, so that if a clash of first comparison, the order will be consistent
2023-11-19 11:05:17 +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 09bf70abd2 chore: release v0.3.3 2023-10-21 16:25:42 +00:00
Jack Wills 44f581f5b3 refactor: LogsTZ from &str 2023-10-18 10:25:34 +00:00
Jack Wills 21234c66c3 chore: Rust 1.73 linting 2023-10-05 19:54:05 +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 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 f906799782 fix: alter the help box link underlining 2023-03-29 17:20:20 +00:00
Jack Wills d431f85021 feat: use ratatui 2023-03-19 21:08:33 +00:00
Jack Wills cb9686cfe8 chore: release v0.2.5 2023-03-13 22:01:39 +00:00
Jack Wills 79de92c392 refactor: use unwrap_or_default() 2023-03-11 21:04:44 +00:00
Jack Wills 9d2e72086b docs: comment typos 2023-03-02 03:54:55 +00:00
Jack Wills 04c26fe8fc refactor: improve the get_width function
Just use x = x.max(y) for the column widths, instead of the previous, laborious, check then update methods
2023-03-01 19:14:39 +00:00
Kian-Meng Ang a0e2eb38ae docs: fix typos
Found via `typos --format brief`
2023-02-03 10:21:16 +08:00
Jack Wills c77c60e151 chore: release v0.2.1 2023-01-29 02:46:38 +00:00
Jack Wills d7a8639d8b docs: changelog 2023-01-29 02:12:02 +00:00
Jack Wills c0bb5355d6 refactor: app_data methods re-ordered & renamed 2023-01-29 01:52:38 +00:00
Jack Wills 2ab88eb26e chore: dependencies updated 2023-01-28 21:55:40 +00:00
Jack Wills b4488e4bdb refactor: major refactor of internal data handling
What started off as an inquisitive look at how the gui drawing blocks get the data they require in order to draw to the screen, ended up as a realisation  that it could be achieved in a better manner. Basically just use x.get(y), instead of using x[y] all over the place
2023-01-28 20:44:09 +00:00