62 KiB
62 KiB
Chores
- create_release.sh updated, [
d4af754ad2] - dependencies updated, [
03599b4665], [aef0c9503e], [f0771eab5d], [1596de8681] - GitHub workflow updated, [
66dae5e61e]
Features
- BREAKING CHANGE -
scroll_down_many&scroll_up_manyremoved,scroll_down_onescroll_up_onerenamedscroll_down,scroll_up, see example_config, [52a04ec1d0] - log search feature, closes #72. Use
#button, remappable vialog_search_mode, to enter log search mode. Case-sensitive by default, editable inconfig.tomlwithlog_search_case_sensitiveentry. Customise colours via[colors.log_search]entries, again see see example_config, [96d9469623], [a2316a9cac] termrenamedfilter term, tests updated, [487c3faf96]
My 32-bit armhf armv6 hardware no longer seems to be able to run Docker. Future oxker releases won't be tested on real hardware but will continue to be built and published for armv6.
v0.11.1
2025-08-21
Reverts
- GitHub workflow reverted, d1b69858
see v0.11.0 release notes for more information about v0.11 release
v0.11.0
2025-08-21
Chores
- Dependencies updated, ced885e0, f9b40ea0
- Rust 1.89 linting, 79d19cee
- GitHub workflow updated, 08384200, 6573af1e
Features
- Horizontally scroll across logs. By default use
←&→keys to traverse horizontally across the lines when logs panel selected. Updatedconfig.tomlwithlog_scroll_forwardandlog_scroll_backc190f020, 8939ac03 - Force clear screen & redraw of UI. By default uses
fkey,config.tomlupdated withforce_redraw50edbc0c - Increase scroll speed using the
ctrlkey in conjuction with a scroll key,config.tomlupdated withscroll_modifier. The next release will removescroll_down_many&scroll_down_upkeys, c5bbffdb
Refactors
- remove macos cfg none-const functions, Zigbuild now uses Rust 1.87.0, eb686e2c
v0.10.5
2025-06-19
Reverts
v0.10.4
2025-06-18
Chores
- .devcontainer updated, 324f8268
- dependencies updated, 0ace9dd6, a6360075
- Rust 1.87.0 linting, 395b1aa7, 67e5888e back
Docs
- example config files updated, 63ab7de7, 8fb5ac4a
- README.md updated, link to directories crate, closes #65, c2bfe329
Features
- log panel size configurable, closes #50, use the
-or=keys to change the height of the logs panel, or\to toggle visibility. Automatically hide the logs panel using a new config itemshow_logs, seeexample_config/*files for more details, 6edf99e0 - build release binaries for aarch64-apple-darwin, closes #62, personally untested on MacOS - but others suggest it works as expected, e7114d2f, 2e850090
Fixes
- merge args color/raw fix, d1983987
Refactors
- reduce cloning of the logs text items, can expect 40-50% reduction in CPU and memory usage in certain common situations, ecefa302
- dead code removed, b40b6b19
Tests
- add more whole layout tests, 4b81c6ca
v0.10.3
2025-04-22
Chores
- dependencies updated, bbfd2462
Tests
v0.10.2
2025-04-19
Chores
- dependencies updated, 1345ecb1
Tests
- use a fixed version String,
0.00.000, in tests, 230174b3
v0.10.1
2025-04-18
Chores
Docs
- comment typo, 723b220c
Fixes
Refactors
Tests
v0.10.0
2025-02-23
Chores
- dependencies updated, e5f355a1, 4539d8ad, 6aee6181, 64d1bdf2
- .devcontainer dependencies updated, 5c8e76e7
- example docker-compose.yml updated, 2354b0b9
- Rust 1.84 linting, 3065265e
Features
- Config file introduced, including customizing color scheme of application, closes #47, f4d54e1b
- Enable log timestamps to be set to any given timezone, plus custom timestamp format via the config file, closes #56, [7a5e7a25873d2c270e5808730721ebb5427a051]
- update Rust edition to 2024, 7e4a960b
Fixes
- Only draw screen if data or layout has changed, drastically reduces CPU usage, bfc295c5
v0.9.0
2024-12-05
Chores
Features
--no-stderrcli arg, removes Standard error output from logs, closes #52, c739637b- ContainerPorts use ipaddr, 1b26997d
Fixes
- update containerised Dockerfile, 0c6f5322
- calculate_usage overflow, 5106a01f
- DockerData spawns insertion error, d4906d33
Refactors
- speed up docker logs init process, 8b9fe424
- remove docker sleep, f1562d10
- dead code removed, 5ee48d57, ba6a9524, f0b11456
- input_handler, 7f423834
- statefulList get_state_title, 2d540b0e
- statefulList next/previous, 7bb2bef2
- help_box closure fn, 2860426d
- use check_sub for sleep calculations, fe3696e5
- rename scheduler to heartbeat, 68a6551e
- remove unnecessary is_running load, 76ccf7c0
- execute_command(), 2a834d6c
- Remove numerous clones(), e5927f78
- remove app_data param from generate_lock(), 1a8dab65
- combine get_filter methods, 356ea554
- FrameData refactors, 57781701, 6e2f82db
- update_container_stat combine is_alive(), 55cc7467
- remove
input_poll_ratefromUi, instead use constPOLL_RATE, 69f6c96b - pass
&FrameDateintodraw_frame(), 35aec506 - dead code removed, caf23be4
- input_handler, 9c4f8910
- draw_block, de76bc22
Tests
- fix logs tests, 9b22f5da
v0.8.0
2024-10-22
Chores
- dependencies updated, ea877d23, af609c0d
- .devcontainer updated, a9844436
- create_release.sh updated, c4943370, 1389d8ad
Features
- Add Stderr output to logs, thanks vincentmasse, closes #48, merges #49, b95c9311, 9936ad45, 289ede3f
Refactors
- Rust 1.82 linting, c058c5a3
v0.7.2
2024-09-07
Reverts
- Expect lint was causing issues with crates/docker builds, revert until fix is found, 578ed9f0
v0.7.1
2024-09-07
Chores
- dependencies updated, d6238587, a564ef80, 1d82ff13, 99f05f2e
- Rust 1.81.0 linting, 372f759c
- .devcontainer updated, 5d77f1e0
Docs
- CHANGELOG.md duplicate removed, 16ecc5a5
- Readme raspberry pi fix, baf68783
- Add installation guide to README for macOS installation via
brew install oxker, thanks miketheman, 59817311, 895ec620
Refactors
- switch lints from
allow(x)toexpect(x), 2a0ab6d8
v0.7.0
2024-08-01
Chores
- .devcontainer extensions updated, 0288cbc8
- dependencies updated, 1df4f78d, 5ae253b8, 7a517db9, 9c291cd9, 0e90f4eb, fe71cbfb
- docker-compose alpine version bump, 51ceab3e
- Rust 1.80 linting, 93e1279b
- create_release v0.5.6, f408acfe
Docs
- screenshot updated, 6975ebe7
Features
- left align all text, e0d421c4
- place image name in logs panel title, 12f24357
- distinguish between unhealthy & healthy running containers, closes #43, de876818
- filter containers, use
F1or/to enter filter mode, closes #37, thanks to MohammadShabaniSBU for the original PR, d5d8a0db, 7ee1f06f
Fixes
- log_sanitizer
raw()&remove_ansi()now functioning as intended, 0dc98dfc - Dockerfile command use uppercase, 068e4025
- heading section help margin, 0e927aae
- install.sh use curl, 197a031b
Tests
- fix layout tests with new left alignment, dfced564
v0.6.4
2024-05-25
Chores
Docs
- exec mode "not available on Windows", in both README.md and help panel, df449a85
Fixes
v0.6.3
2024-05-07
Chores
Features
Fixes
- correct header display when terminal width changes, 4628803b
Refactors
Tests
v0.6.2
2024-03-31
Chores
- .devcontainer updated, 82a7f84e
- Rust 1.77 linting, dfd4948d
- platform.sh formatted, 7953e68f
- dependencies updated, 8e6c3ca6
v0.6.1
2024-02-14
Chores
- create_release v0.5.5, 616338b7
- update dependencies, 10180d2e
- update to ratatui v0.26.0, d33dce3e
- GitHub workflow dependency bump, 0314eac9
Docs
- screenshot updated, fe5ec4f5
Fixes
- ports all listed in white, d3b23585
- use long container name in delete popup, 6202b7bb
- memory display, closes #33, a182d40a
Refactors
Tests
v0.6.0
2024-01-18
Chores
- dependencies updated, 53b4bafb, 58ef1516, b6fd3502, 0438c108
- files formatted, 1806165c
- create_release.sh check for unused lint, d0b27211
Docs
= Readme updated, screenshot added, 7561a934, 4069e557
Features
Fixes
- sort arrow now on left of header, 40ddcb72
Refactors
- rename string_wrapper > unit_struct, 27cf53e4
Tests
- Finally have tests, currently for layout and associated methods, at the moment running the tests will not interfere with any running Docker containers, 4bcf77db
v0.5.0
2024-01-05
Chores
- .devcontainer updated, 2313618e, 5af6b8bc, 9b0b6b10
- alpine version bump, 061de032
- dependencies updated, 0890991f, 0a7b266b, 333621f1, 3e51889c, a179bb6f
- file formatting, eb5e74ae
- Rust 1.75.0 linting, 81be75f2
Docs
Features
- re-arrange columns, container name is now the first column, added a ContainerName & ContainerImage struct via
string_wrappermacro, closes #32, e936bb4b
Fixes
Refactors
- GitHub workflow action improved, 04b66af2
- sort_containers, ccf8b55a
- string_wrapper .get() return
&str, a722731c
v0.4.0
2023-11-21
Chores
- workflow dependencies updated, 6a4cf649
- dependencies updated, e301b518, 81d5b326, 294cc268
- lints moved from main.rs to Cargo.toml, 2de76e2f
- .devcontainer updated, 37d2ee91
Features
- Docker exec mode - you are now able to attempt to exec into a container by pressing the
ekey, closes #28, c8077bca, 0e5ee143, 0e5ee143 - Export logs feature, press
sto save logs, use--save-dircli-arg to customise output location, closes #1, a15da5ed
Fixes
- GitHub workflow, cargo publish before create release, ae4ce3b5
- sorted created_at clash, closes #22, 3a648939
as_ref()fixed, thanks Daniel-Boll, 77fbaa8b
v0.3.3
2023-10-21
Chores
- docker-compose Alpine bump, d46c425f
- dependencies updated, e6eecbbd, ec93115e, b36daa5a, 9c0de1f0, 6dd953df
- Rust 1.73 linting, 21234c66
Docs
- README.md updated, 3fd3915b
Refactors
- LogsTZ from
&str, 44f581f5 - from string impl, ca79893d
- env handling, 18c3ed43
parse_args/mod.rs>parse_args.rs, a6ff4124- set_info_box take
&str, faeaca0c - GitHub action use concurrency matrix, re-roder workflow, 85f1982f
v0.3.2
2023-08-28
Chores
Features
- Custom hostname.
oxkerwill use$DOCKER_HOSTenv if set, or one can use the cli argument--host, which takes priority over the$DOCKER_HOST, closes #30, 10950787
Refactors
set_error()takesgui_stateand error enum, to make sure app_data & gui_state is in sync 62c78dfafn loading_spindoesn't need to be async, 2e27462d
v0.3.1
2023-06-04
Chores
- github workflow ubuntu latest, build for x86 musl, 4fa841e6
- dependencies updated, 0caa92f6, 1fd1dfc7
Spans->Line, ratatui 0.21 update, 4679ddc8, 0d37ac55create_release.shupdated, 7dec5f14
Fixes
v0.3.0
2023-03-30
Chores
Docs
- README.md and screenshot updated, 73ab7580
Features
- Ability to delete a container, be warned, as this will force delete, closes #27, 937202fe, b25f8b18
- Publish images to
ghcr.ioas well as Docker Hub, and correctly tag images withlatestand the current sermver, cb1271cf - Replace
tui-rswith ratatui, d431f850
Fixes
Refactors
popup()usesaturating_x()rather thanchecked_x(), d628e802- button_item() include brackets, 7c92ffef
v0.2.5
2023-03-13
Chores
- Rust 1.68.0 clippy linting, 5582c454
- devcontainer use sparse protocol index, 20b79e9c
- dependencies updated, 0c07d4b4, 601a73d2, 5aaa3c1a, 7a156303, 45715775
Features
- increase mpsc channel size from 16 to 32 messages, 924f14e9
- KeyEvents send modifier, so can quit on
ctrl + c, 598f67c6 - only send relevant mouse events to input handler, 507660d8
Fixes
- GitHub workflow on SEMEVR tag only, 14077386
Refactors
- replace
unwrap_or(())with.ok(), 8ba37a16 - use
unwrap_or_default(), 79de92c3 - Result return, d9f0bd55
Reverts
- temporary devcontainer buildkit fix removed, d1497a44
v0.2.4
2023-03-02
Chores
- dependencies updated, aac3ef2b, 4723be7f, c69ab4f7, ba643786, 2bb4c338
- dev container install x86 musl toolchain, e650034d
Docs
Features
- mouse capture is now more specific, should have substantial performance impact, 10x reduction in cpu usage when mouse is moved observed, as well as fixing intermittent mouse events output bug, 0a1b5311, 93f7c07f, c74f6c11
- improve the styling of the help information popup, 28de74b8
- use checked_sub & checked_div for bounds checks, 72279e26
Fixes
- correctly set gui error, 340893a8
Refactors
- dead code removed, b8f5792d
- improve the get_width function, 04c26fe8
- place ui methods into a Ui struct, 3437df59
- get_horizontal/vertical constraints into single method, e8f5cf9c
- docker update_everything variables, 074cb957
v0.2.3
2023-02-04
Fixes
- Container runner
FROM scratch(missing from v0.2.2 D'oh), this now should actually reduce Docker image size by ~60%, 0bd317b7
v0.2.2
2023-02-04
Chores
- devcontainer.json updated, typos-cli installed, temporary(?) buildkit fix, 3c6a8db6
- create_release.sh check for typos, 310a63f4
Docs
- AUR install instructions, thanks orhun, c5aa346b
- typos fixes, thanks kianmeng, 5052d7ab
- Readme.md styling tweak, 310a63f4
- Contributing guide, 5aaa00d6, a44b15f7
Features
- Use a scratch container for the docker image, should reduce image size by around 60%. This checks for the ENV
OXKER_RUNTIME=container, which is automatically set by the docker image, 17b71b6b
v0.2.1
2023-01-29
Chores
Docs
- comment typo, 10255791
Fixes
- deadlock on draw logs when no containers found, 68e444bf
- github workflow release on main only (with semver tag), e4ca41df, 749ec712
Refactors
- major refactor of internal data handling, b4488e4b
- needless (double) referencing removed, a174dafe
- app_data methods re-ordered & renamed, c0bb5355
Reverts
- is_running AtomicBool back to SeqCst, c4d80061
v0.2.0
2023-01-21
Chores
- dependencies updated, 8cd199db, d880b829, 66d57c99, 33f93749, 007d5d83
- create_release.sh typos, 9a27d46a
- dev container post create install cross, 2d253f03
Features
all potentially considered breaking changes
- store Logs in own struct, use a hashset to track timestamps, hopefully closes #11, 657ea2d7
- Spawn docker commands into own thread, can now execute multiple docker commands at the same time, 9ec43e12
- align memory columns correctly, minimum byte display value now
0.00 kB, rather than0 B, closes #20, bd7dfcd2, 51c58001
Refactors
- main.rs tidy up, 97b89349
- derive Default for GuiState, 9dcd0509
- param reduction, AtomicBool to Relaxed, 0350293d
v0.1.11
2023-01-03
Chores
- dependencies updated, 9b09146a
Features
install.shscript added, for automated platform selection, download, and installation, 7a42eba6, e0703b76
Fixes
- If a sort order is set, sort containers on every
update_stats()execution, cfdea775
Refactors
- input sort executed in app_data struct
sort_by_header(), 3cdc5fae
v0.1.10
2022-12-25
Chores
Features
- Caching on github action, a91c9aa4
Fixes
- comment typo, 7899b773
Refactors
- remove_ansi() to single liner, 57c3a6c1
v0.1.9
2022-12-05
Fixes
- disallow commands to be sent to a dockerised oxker container, closes #19, 160b8021
- if no container created time, use 0, instead of system_time(), 1adb61ce
v0.1.8
2022-12-05
Chores
- dependencies updated, e3aa4420
- docker-compose.yml alpine bump, 911c6596
- github workflow use dtolnay/rust-toolchain, 57c18878
Features
- Clicking a header now toggles between Ascending -> Descending -> Default. Use the containers created_time as the default order - maybe add created column in future version, closes #18, cf14ba49, d1de2914
-sflag for showing the oxker container when executing the docker image, c93870e5
v0.1.7
2022-11-13
Chores
Docs
v0.1.6
2022-10-16
Chores
Fixes
Features
- Show container name in log panel title, closes #16, 9cb0c414,
- use gui_state HashSet to keep track of application gui state, 9e9d5155,
- terminal.clear() after run_app finished, 67c49575,
Refactors
- CpuStats & MemStats use tuple struct, a060d032,
v0.1.5
2022-10-07
Chores
- Update clap to v4, 15597dbe,
Docs
- readme.md updated, a05bf561,
Features
- use newtype construct for container id, 41cbb84f,
Refactors
- Impl Copy where able to, e76878f4,
- replace async fn with just fn, 17dc604b,
- remove pointless clone()'s & variable declarations, 6731002e,
- replace String::from("") with String::new(), 62fb2247,
- replace map_or_else with map_or, 3e26f292, 5660b34d,
v0.1.4
2022-09-07
Chores
Features
- containerize self, github action to build and push to Docker Hub, 07f97202,
- gui_state is_loading use a HashSet to enable multiple things be loading at the same time, 66583e1b,
- github action publish to crates.io, 90b2e3f6,
- derive Eq where appropriate, d7c2601f,
- ignore containers 'oxker' containers, 1be9f52a,
- update container info if container is either running OR restarting, 5f12362d,
Fixes
- devcontainer updated, 3bde4f56,
- Use Binate enum to enable two cycles of cpu/mem update to be executed (for each container) at the same time, refactor hashmap spawn insertions, 7ec58e79,
Refactors
- improved way to remove leading '/' of container name, 832e9782,
v0.1.3
2022-08-04
Chores
- dependencies updated, d9801cdf,
- linting: nursery, pedantic, unused_unwraps, 1bd61d4c, 1263662b, ca3315a6,
Features
- build all production targets on release, 44f8140e,
Fixes
- toml keywords, dd2d82d1,
v0.1.2
2022-07-23
Fixes
- remove reqwest dependency, 10ff8bab,
v0.1.1
2022-07-23
Chores
- update Cargo.toml, in preparation for crates.io publishing, fdc6898e,
Docs
- added cargo install instructions, c774b10d,
Fixes
- use SpawnId for docker hashmap JoinHandle mapping, 1ae95d58,
v0.1.0
2022-07-23
Chores
- dependencies updated, cf7e02dd,
Features
- Enable sorting of containers by each, and every, heading. Either via keyboard or mouse, closes #3, a6c296f2,
- Spawn & track docker information update requests, multiple identical requests cannot be executed, 740c059b,
v0.0.6
2022-07-06
Docs
Fixes
Refactors
v0.0.5
2022-05-30
Docs
- Readme one-liner to download & install latest version, 11d5ba36,
- Example docker-compose.yml bump alpine version to 3.16, 98c83f2f,
Fixes
- use Some() checks to make sure that container item indexes are still valid, else can create out-of-bounds errors, closes #8, 4cf02e3f,
- Remove + replace as many unwrap()'s as possible, d8e22d74,
- Help panel typo, e497f3f2,
v0.0.4
2022-05-08
Fixes
- Help menu logo corrected, 2f545202,
v0.0.3
2022-05-08
Docs
- slight readme tweaks, eb9184a1,
Features
Fixes
- create_release.sh correctly link to closed issues, 5820d0a9,
Refactors
- generate_block reduce params, insert into area hashmap from inside generate_block function, 32705a60,
- dead code removed, d20e1bcd,
- create_release.sh improved flow & comments, 4283a285,
v0.0.2
2022-04-29
Features
- allow toggling of mouse capture, to select & copy text with mouse, closes #2, aec184ea,
- show id column, b10f9274,
- draw_popup, using enum to draw in one of 9 areas, closes #6, 1017850a,
- use a message rx/sx for all docker commands, remove update loop, wait for update message from gui instead, 9b70fdfa,
Fixes
- readme.md typo, 589501f9,
- column heading mem > memory, 5e8e6b59,
- cargo fmt added to create_release.sh, bb29c0eb,
v0.0.1
2022-04-25
- init commit