Commit Graph
582 Commits
Author SHA1 Message Date
Nils Andreas Svee fe776e6672 feat(cli): add multi-applet dispatcher with subcommand support 2026-06-20 22:59:48 +07:00
Nils Andreas Svee efaa60cbd4 refactor(cli): simplify applet detection and remove feature-based defaults 2026-06-20 22:59:48 +07:00
Nils Andreas Svee dc65daec75 build: bump minimum supported rust version to 1.85
Update the rust-version in Cargo.toml and the installation requirements in README.md to reflect the new MSRV.
2026-06-20 22:35:07 +07:00
Nils Andreas Svee e3b74441a7 fix(deps): update rust crate ratatui to 0.30.2 2026-06-20 22:32:43 +07:00
renovate[bot] 5595d6e78e fix(deps): update rust crate crossterm to 0.29.0 2026-06-20 22:31:44 +07:00
renovate[bot] fe1f1a9c5b chore(deps): pin dependencies 2026-06-14 17:53:37 +00:00
Nils Andreas Svee afe07f0b9a refactor(cli): reorganize feature flags and update distribution config 2026-06-10 15:19:34 +07:00
Nils Andreas Svee 352cebb5c3 build: enable tui feature in distribution workspace
Include the TUI module in release builds to ensure command-line interface functionality is available in distributed binaries.
v0.3.0
2026-06-10 00:59:40 +07:00
Nils Andreas Svee 58fd017d4f build(ci): update cargo-dist to v0.32.0 and revert runner to ubuntu-22.04
Upgrade CI tooling to use cargo-dist v0.32.0 and switch to the ubuntu-22.04 runner to ensure environment compatibility. Pin GitHub Actions to major versions for better maintainability.
2026-06-10 00:47:34 +07:00
Nils Andreas Svee 5efb8a1870 build: bump workspace and crate versions to 0.3.0 2026-06-10 00:44:10 +07:00
Nils Andreas Svee f41fd4a8e7 refactor: simplify lib.rs and update feature gating for cmd modules 2026-06-10 00:41:03 +07:00
Nils Andreas Svee 5de1bf7343 docs: update README with multi-applet usage and installation instructions 2026-06-09 23:23:51 +07:00
Nils Andreas Svee 7e89d11e6e build: configure multi-binary targets and feature-gate dependencies 2026-06-09 23:23:51 +07:00
Nils Andreas Svee 196fc29f76 feat(tui): optimize terminal UI and simplify graph data series 2026-06-09 23:23:51 +07:00
Nils Andreas Svee ded8a5f87d refactor(client): encapsulate session lifecycle and stream output 2026-06-09 23:23:51 +07:00
Nils Andreas Svee 133ff71b72 feat(cli): implement multi-applet binary dispatch and signal handling 2026-06-09 23:23:50 +07:00
Nils Andreas Svee d7cdcc5cee refactor(cli): reorganize project structure into modular commands 2026-06-09 23:23:41 +07:00
Nils Andreas Svee c31ad07d61 feat(irtt-cli): add optional tui output mode 2026-06-09 13:29:00 +07:00
renovate[bot] ece9fd6db0 chore(deps): maintain cargo lockfile 2026-06-09 11:32:29 +07:00
Nils Andreas Svee 9b0cc2b395 test(ci): split netem interop summaries into local and GitHub-specific reports
Create separate markdown files for local browsing with relative links and GitHub Action summaries with artifact notices. This ensures the GitHub Step Summary remains readable and informative without broken links.
2026-06-05 17:13:51 +07:00
renovate[bot] b544df7cc9 fix(deps): update socket dependencies to 0.6.4 2026-06-05 10:43:53 +07:00
renovate[bot] 5646365677 chore(deps): update github actions 2026-06-05 10:43:31 +07:00
Nils Andreas Svee 64be840c1e test(ci): enhance netem interop reporting and loss validation 2026-06-04 09:16:32 +07:00
Nils Andreas Svee b8b0425c4e test(ci): add deterministic Linux netem interop testing 2026-06-03 14:48:51 +07:00
Nils Andreas Svee 3e07732934 test(scripts): add interoperability harness to compare irtt clients
Add a Python-based black-box testing script to validate the Rust client's output and metrics against the upstream Go implementation.
2026-05-25 16:22:46 +07:00
renovate[bot] 61a242c5d4 chore(deps): update github actions 2026-05-25 15:02:49 +07:00
renovate[bot] 6bb4e70df3 chore(deps): maintain cargo lockfile 2026-05-25 01:56:28 +00:00
Nils Andreas Svee c739764476 ci: split actionlint into separate steps for handwritten and generated workflows
Disable ShellCheck globally for the cargo-dist generated release workflow to replace brittle regex ignore patterns with a cleaner configuration.
2026-05-18 13:50:18 +07:00
Nils Andreas Svee 5c96024c4f ci: simplify actionlint ignore patterns for generated release workflow
Update the regex patterns to be more robust and improve the clarity of comments regarding cargo-dist generated workflows.
2026-05-18 13:46:26 +07:00
Nils Andreas Svee 5d653dac13 fix(client): remove duplicate constant exports and definitions 2026-05-18 11:12:21 +07:00
Nils Andreas Svee 6f77d38a7f docs: document client errors and bounds 2026-05-18 10:56:58 +07:00
Nils Andreas Svee 01c10e2e0d docs: document client public API 2026-05-18 01:34:04 +07:00
Nils Andreas Svee 8fd0b803e9 docs: add public crate landing docs 2026-05-18 01:22:08 +07:00
Nils Andreas Svee 614ad5b5cd ci: ignore specific shellcheck warnings in generated release workflow
Suppress SC2086 and SC2129 linting errors for the generated release.yml to prevent build noise while maintaining checks for logic issues.
2026-05-18 01:05:40 +07:00
Nils Andreas Svee 2fcef0adc5 docs: clarify params validation boundaries 2026-05-18 00:36:18 +07:00
Nils Andreas Svee c7a0e5d055 chore: tighten release readiness checks 2026-05-18 00:30:07 +07:00
Nils Andreas Svee e117813578 test: consolidate and prune redundant unit tests
Simplify the test suite by merging similar test cases and removing redundant assertions that verify trivial initialization and basic container logic.
2026-05-18 00:16:51 +07:00
Nils Andreas Svee 3b5336a487 refactor(client): use SignedDuration for one-way delay to support negative values
Allow one-way delay samples to represent negative values caused by wall-clock skew between client and server. Update CLI output and statistics collection to correctly handle and report these signed durations.
2026-05-17 23:55:01 +07:00
Nils Andreas Svee 0b16ee802d fix(stats): support sequence number wraparound in IPDV tracking
Use wrapping arithmetic instead of checked arithmetic to ensure inter-packet delay variation (IPDV) is correctly calculated when sequence numbers wrap from u32::MAX to 0.
2026-05-17 23:11:26 +07:00
Nils Andreas Svee 64da60d480 feat(proto): enforce maximum length for server fill parameter
Move MAX_SERVER_FILL_BYTES to irtt-proto and validate it during decoding to prevent processing oversized parameters.
2026-05-17 22:59:57 +07:00
Nils Andreas Svee 2d6581f31f refactor(client): encapsulate SignedDuration and enhance its API
Hide internal fields to improve type safety and provide helper methods for unit conversions and negative value checks. Fix several feature-gated test compilation issues.
2026-05-17 22:47:16 +07:00
Nils Andreas Svee bec56d4114 refactor(client): use SignedDuration for effective RTT to support negative values
Simplify RttSample by merging signed and unsigned fields into a single SignedDuration for adjusted and effective RTT. This ensures accurate reporting and statistics when server processing time exceeds raw RTT.
2026-05-17 21:30:51 +07:00
Nils Andreas Svee 37de7c96a1 test(client): remove redundant probe/reply tests 2026-05-17 15:22:08 +07:00
Nils Andreas Svee 6c5972aa58 test(client): refactor probes and replies tests into submodules
Split the monolithic `probes_replies.rs` file into logical submodules and expose internal packet processing methods to improve test maintainability and coverage of boundary conditions.
2026-05-17 14:54:59 +07:00
renovate[bot] 55034fc23c chore(deps): update github actions 2026-05-17 14:49:03 +07:00
Nils Andreas Svee bed877760e test: prune client tests that assert private implementation details 2026-05-17 14:48:45 +07:00
renovate[bot] 87e1755a4b chore(deps): pin dependencies 2026-05-16 20:39:57 +00:00
Nils Andreas Svee 39d414d588 test: consolidate formatter and hub policy cases 2026-05-17 00:39:23 +07:00
Nils Andreas Svee 00fd0ebb15 test: consolidate duplicate CLI and client config cases 2026-05-17 00:34:18 +07:00
Nils Andreas Svee ddd420cc21 test: consolidate and prune implementation-coupled tests 2026-05-17 00:28:05 +07:00