Nils Andreas Svee
ac3f4fd29e
refactor(baseliner): extract reflector statistics logic and add unit tests
2026-07-21 13:06:40 +07:00
Nils Andreas Svee
cf937584c6
chore(deps): update rust crate dependencies
2026-07-21 10:35:07 +07:00
Nils Andreas Svee
40d68b64ab
chore(deps): switch netlink dependencies from git to crates.io
2026-07-21 10:34:17 +07:00
renovate[bot]
baf6400e5f
chore(deps): update rust crate thiserror to v2.0.19
2026-07-21 10:26:40 +07:00
renovate[bot]
59f93da840
chore(deps): update rust crate libc to v0.2.187
2026-07-21 10:26:39 +07:00
renovate[bot]
608656ebc2
fix(deps): update netlink-socket2 digest to 928e9ca
2026-07-21 10:26:39 +07:00
renovate[bot]
6923a2d539
fix(deps): update netlink-bindings digest to 928e9ca
2026-07-21 10:25:51 +07:00
renovate[bot]
afc1d3a38b
chore(deps): update rust crate fastrand to v2.5.0
2026-07-21 10:25:51 +07:00
renovate[bot]
da4951ad78
chore(deps): update rust crate anyhow to v1.0.104
2026-07-21 10:25:41 +07:00
Nils Andreas Svee
8236f0d7a5
feat(platform): add FreeBSD support for interface statistics
...
Implement interface statistics for FreeBSD using sysctl and introduce a basic UCI configuration source for Linux. Include a cross-compilation configuration and a target check script to verify multi-platform support.
2026-07-20 23:06:23 +07:00
Nils Andreas Svee
cd6d631afa
refactor(config): remove unimplemented measurement types
...
Remove NTP and TCP timestamp variants from the measurement type configuration since they are currently unimplemented and lead to runtime panics.
2026-07-20 23:06:23 +07:00
Nils Andreas Svee
b07dc99bf5
fix(deps): update rust crate icmp-socket2 to 0.5.1
2026-07-17 13:07:30 +07:00
Nils Andreas Svee
ae9193580c
refactor(platform): restructure platform-specific abstractions and add synthetic backends
2026-07-17 13:02:17 +07:00
Nils Andreas Svee
50f0dcb4dd
perf(baseliner): bound the reselection channel to prevent memory buildup
...
Change the reselection channel from unbounded to a size of 1 and use non-blocking sends to avoid unnecessary queuing of reselection triggers.
2026-07-17 11:39:07 +07:00
Nils Andreas Svee
9811592f13
feat(platform): introduce abstractions for cross-platform interface statistics and traffic control
...
Decouple the rate controller from Linux-specific Netlink calls to support other operating systems. This adds a macOS backend for interface statistics and an "observe-only" mode for platforms where traffic shaping is not yet implemented.
2026-07-17 11:35:43 +07:00
Nils Andreas Svee
c5d673fcb8
build(uci): restrict UCI dependency and feature to Linux targets
...
Ensure the UCI integration is only compiled on Linux, as the underlying native dependency is platform-specific. Added a build script to warn users when the feature is enabled on unsupported platforms.
2026-07-17 01:43:10 +07:00
Nils Andreas Svee
b56c8b72cc
refactor(main): modularize main loop and improve resource cleanup logic
2026-07-14 22:53:01 +07:00
Nils Andreas Svee
8b0c37bc83
refactor: simplify control flow and error handling in metrics and netlink
2026-07-05 12:44:44 +07:00
Nils Andreas Svee
694cad1fac
chore(deps): update wasm and web-related dependencies
2026-07-03 00:50:00 +07:00
Nils Andreas Svee
908fbfdf04
refactor(deps): cleanup netlink-bindings and shlex dependencies
2026-07-03 00:50:00 +07:00
Nils Andreas Svee
2dacde8a3f
chore(deps): update cargo dependencies
2026-07-03 00:50:00 +07:00
renovate[bot]
371b3efcdc
chore(deps): update rust crate anyhow to v1.0.103
2026-07-03 00:47:45 +07:00
renovate[bot]
81d6ebe3a8
chore(deps): update rust crate log to v0.4.33
2026-07-03 00:47:45 +07:00
renovate[bot]
8ccbd30582
chore(deps): update actions/checkout action to v7
2026-07-03 00:47:45 +07:00
renovate[bot]
ae3cd96313
fix(deps): update netlink-socket2 digest to 0b609e9
2026-07-03 00:47:45 +07:00
renovate[bot]
3d1c14d312
fix(deps): update netlink-bindings digest to 0b609e9
2026-07-03 00:46:39 +07:00
renovate[bot]
7955046426
fix(deps): update rust-uci digest to 3e7b615
2026-07-03 00:46:39 +07:00
renovate[bot]
30e3281178
chore(deps): update google/osv-scanner-action action to v2.3.8
2026-07-03 00:46:39 +07:00
renovate[bot]
f3f033cf0f
chore(deps): update rust crate libc to v0.2.186
2026-07-03 00:46:39 +07:00
Nils Andreas Svee
4aaf8fa100
chore: add SPDX license identifiers and copyright headers to source files
...
Apply the MPL-2.0 license to all source files and include the full license text to ensure legal compliance and proper attribution.
2026-04-23 12:39:52 +07:00
Nils Andreas Svee
dfa11be236
chore: add MPLv2.0 license
...
The original Lua sqm-autorate project is licensed under the MPLv2.0, and this project started life as a pure port of that. Thus our code should also be licensed under the MPL
2026-04-23 12:19:49 +07:00
Nils Andreas Svee
58d536bb22
refactor(pinger): replace hashlru with standard HashMap and manual TTL cleanup
...
Remove the hashlru dependency to reduce bloat, replacing it with a Mutex-wrapped HashMap and manual entry expiration logic.
2026-04-23 00:33:07 +07:00
Nils Andreas Svee
6f16f3a93c
build(deps): disable default features for hashlru to reduce dependency bloat
...
Remove unused dependencies including ahash, hashbrown, and zerocopy by disabling default features for hashlru.
2026-04-23 00:19:00 +07:00
Nils Andreas Svee
1b959d52ed
feat(main): Initialize and pass InFlightProbeCache to pinger threads
2026-04-23 00:16:19 +07:00
Nils Andreas Svee
8c29d7b251
feat(pinger): Integrate in-flight probe cache into sender and listener
2026-04-23 00:16:19 +07:00
Nils Andreas Svee
80adb368d4
feat(pinger): Implement new craft_packet signature for ICMP types
2026-04-23 00:16:19 +07:00
Nils Andreas Svee
6ae19b619a
feat(pinger): Introduce InFlightProbeCache and update Ping traits
2026-04-23 00:16:19 +07:00
Nils Andreas Svee
7250050f63
feat(deps): Add hashlru for in-flight probe caching
2026-04-23 00:16:19 +07:00
Nils Andreas Svee
3322e82b6c
refactor: replace std::sync::mpsc with flume for improved channel performance
...
Migrate internal message passing to flume to leverage better performance and additional features like eventual fairness and selection.
2026-04-22 22:39:06 +07:00
Nils Andreas Svee
ea19c6d68b
style: remove unused synchronization imports
...
Eliminate unused Arc, Mutex, and RwLock imports to clean up codebase and reduce compiler warnings.
2026-04-22 22:26:44 +07:00
Nils Andreas Svee
a81d208c0d
style: refine logging verbosity and improve diagnostic messages
...
Demote baseline telemetry to debug level, add context to rate controller warnings, and remove redundant string conversions in reflector selection logs.
2026-04-22 22:09:26 +07:00
Nils Andreas Svee
e22c100e57
refactor(main): Relocate and enhance signal handler with improved logging
2026-04-22 21:45:27 +07:00
Nils Andreas Svee
72fe0230ee
style: Apply general code formatting and import reordering
2026-04-22 21:45:25 +07:00
Nils Andreas Svee
6690402a34
chore(deps): update dependencies and switch rust-uci to git revision
...
Update bindgen, nom, and other core dependencies while switching rust-uci and libuci-sys to a specific git revision to ensure compatibility with recent project changes.
2026-04-22 16:55:46 +07:00
Nils Andreas Svee
3ec53a1224
refactor: Migrate configuration to new UCI path prefix and boolean helper
2026-04-22 16:55:05 +07:00
Nils Andreas Svee
7d5c2f0275
refactor: Add boolean configuration helper and streamline host tag retrieval
2026-04-22 16:55:05 +07:00
Nils Andreas Svee
45da0c030e
feat: Add flexible boolean parsing for configuration
2026-04-22 16:55:05 +07:00
Nils Andreas Svee
33169182be
chore(deps): update rust-uci repository source
...
Switch the rust-uci dependency to the namib-project fork while maintaining the same revision to ensure availability and consistency with project requirements.
2026-04-22 15:11:16 +07:00
Nils Andreas Svee
2aea1bea86
chore(deps): switch rust-uci to git dependency
...
Update rust-uci to use a specific git revision from the upstream repository to incorporate latest changes not yet available in the published version.
2026-04-22 15:06:45 +07:00
Nils Andreas Svee
d0e3394f03
refactor: add ArcMutex/ArcRwLock type aliases
...
Replace repeated Arc> and Arc> with concise type aliases for readability.
2026-04-18 19:04:35 +02:00