renovate Bot
8eea71fa4e
fix(deps): update rust-uci digest to 6835397
Rust CI / cargo fmt (pull_request) Successful in 13s
Rust CI / cargo clippy (pull_request) Failing after 22s
Rust CI / cargo check (x86_64-unknown-linux-gnu) (pull_request) Failing after 24s
Rust CI / cargo test (x86_64-unknown-linux-gnu) (pull_request) Failing after 31s
Rust CI / cargo check (x86_64-unknown-linux-musl) (pull_request) Failing after 7s
Rust CI / cargo test (x86_64-unknown-linux-musl) (pull_request) Failing after 7s
Build binaries / Build (arm-musleabi) (pull_request) Successful in 1m49s
Build binaries / Build (aarch64-musl) (pull_request) Successful in 1m50s
Supply chain / cargo-deny advisories (pull_request) Failing after 3s
Supply chain / cargo-deny bans licenses sources (pull_request) Failing after 2s
Supply chain / actionlint (pull_request) Failing after 2s
Rust CI / cargo doc (pull_request) Failing after 33s
Build binaries / Build (armv7-musleabi) (pull_request) Successful in 1m39s
Build binaries / Build (arm-musleabihf) (pull_request) Successful in 1m48s
Build binaries / Build (armv7-musleabihf) (pull_request) Successful in 1m38s
Build binaries / Build (i686-musl) (pull_request) Successful in 1m31s
Build binaries / Build (mips-musl) (pull_request) Successful in 2m9s
Build binaries / Build (mips64-muslabi64) (pull_request) Successful in 2m9s
Build binaries / Build (mipsel-musl) (pull_request) Successful in 1m59s
Build binaries / Build (mips64el-muslabi64) (pull_request) Successful in 2m0s
Build binaries / Build (x86_64-musl) (pull_request) Successful in 1m38s
Build binaries / Build (riscv64gc-musl) (pull_request) Successful in 1m42s
2026-10-11 18:08:03 +00:00
Nils Andreas Svee
89c7d75947
refactor(measurement): migrate ICMP engine to Tokio async runtime
2026-10-08 14:15:14 +07:00
Nils Andreas Svee
64e002c0d0
chore(deps): update rust crate icmp-socket2 to v0.6.4
Rust CI / cargo fmt (push) Successful in 17s
Rust CI / cargo check (x86_64-unknown-linux-gnu) (push) Failing after 40s
Rust CI / cargo clippy (push) Failing after 40s
Rust CI / cargo test (x86_64-unknown-linux-gnu) (push) Failing after 45s
Rust CI / cargo check (x86_64-unknown-linux-musl) (push) Failing after 7s
Rust CI / cargo test (x86_64-unknown-linux-musl) (push) Failing after 8s
Rust CI / cargo doc (push) Successful in 33s
Supply chain / actionlint (push) Successful in 11s
Supply chain / cargo-deny advisories (push) Failing after 1m51s
Supply chain / cargo-deny bans licenses sources (push) Failing after 1m44s
2026-09-30 15:32:22 +07:00
Nils Andreas Svee
e27bab1944
chore(deps): update rust crate icmp-socket2 to v0.6.2
Rust CI / cargo fmt (push) Successful in 17s
Rust CI / cargo clippy (push) Failing after 40s
Rust CI / cargo check (x86_64-unknown-linux-gnu) (push) Failing after 40s
Rust CI / cargo check (x86_64-unknown-linux-musl) (push) Failing after 9s
Rust CI / cargo test (x86_64-unknown-linux-gnu) (push) Failing after 47s
Rust CI / cargo test (x86_64-unknown-linux-musl) (push) Failing after 8s
Supply chain / actionlint (push) Successful in 9s
Rust CI / cargo doc (push) Successful in 43s
Supply chain / cargo-deny advisories (push) Failing after 1m48s
Supply chain / cargo-deny bans licenses sources (push) Failing after 1m50s
2026-09-28 19:52:26 +07:00
Nils Andreas Svee
a6478c9bd4
feat(uci): derive UCI schema from settings
...
Add uci-derive proc-macro crate with UciConfig and UciSection derive
macros that generate UCI schema metadata from Settings structs. The
schema maps UCI section types and option names to config-rs field
paths. UciSource::from_schema() creates a source from the derived
schema, mapping known UCI options to their Settings fields while
preserving unknown options under raw UCI-derived paths.
2026-08-07 16:04:59 +07:00
Nils Andreas Svee
f51d90bff6
feat(settings): parse reflector lists with CSV
...
Add CSV-based reflector list parsing with Serde reflector records.
The load_reflectors method reads a CSV file with reflector_ip,
ip_version, and description columns, validating IP version
consistency for each entry.
2026-08-07 16:04:59 +07:00
Nils Andreas Svee
af07915441
build(uci): enable vendored UCI builds and Unix development support
...
Switch rust-uci dependency to the Lochnair fork with vendored UCI
feature for self-contained builds without system libuci. Add
uci-vendored feature flag (enabled by default) that pulls in the
vendored C library. UCI support on non-Linux Unix is intended for
development and testing.
2026-08-07 16:04:59 +07:00
Nils Andreas Svee
39add2b2e0
feat(uci): add generalized UCI configuration source
...
Introduce the UciSource abstraction as a config-rs Source that reads
UCI packages and maps them into the configuration tree. Supports
package selection, required/optional behavior, and custom config/save
directories. Move rust-uci dependency to cfg(unix) to enable UCI
support on all Unix systems for development and testing, while
Linux/OpenWrt remains the production-supported platform.
2026-08-07 16:04:59 +07:00
Nils Andreas Svee
c0a50c68f9
feat(config): add config-rs settings support
...
Introduce config-rs and Serde support with a nested Settings model.
Add config and serde dependencies with toml feature for file-based
configuration loading. The Settings struct provides typed configuration
with sensible defaults for network, output, observability, and advanced
settings sections. Environment variable override via SQMA__ prefix is
supported. The legacy Config remains in use; migration follows later.
2026-08-07 16:04:58 +07:00
renovate[bot]
bc86a2cd53
fix(deps): update rust crate icmp-socket2 to 0.6.0
2026-07-29 10:04:32 +00:00
Nils Andreas Svee
288d1afdb9
chore(deps): switch netlink dependencies from git to crates.io
2026-07-24 00:05:41 +07:00
renovate[bot]
f6fa7b8814
fix(deps): update netlink-socket2 digest to 928e9ca
2026-07-24 00:05:40 +07:00
renovate[bot]
cd160e67fe
fix(deps): update netlink-bindings digest to 928e9ca
2026-07-24 00:05:40 +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
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
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
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
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
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
7c40990e93
chore(deps): switch netlink dependencies to upstream git and remove vendor patch
...
Replace the local vendored patch for netlink-socket2 with a direct reference to the upstream git repository to maintain the fix for musl targets.
This should be changed back to using a release once the fix has a published release
2026-04-18 15:41:02 +07:00
Nils Andreas Svee
7b0eb942ea
fix(deps): patch netlink-socket2 to support musl targets
...
Vendor netlink-socket2 to resolve compilation failures caused by direct struct-literal initialization of libc types on musl.
2026-04-14 15:00:49 +07:00
Nils Andreas Svee
5daccecc1d
fix(deps): update rust crate netlink-bindings to 0.3
...
Adjust netlink and traffic control logic to accommodate breaking API changes, including shifts from method calls to direct field access.
2026-04-14 13:09:50 +07:00
renovate[bot]
2c336799b8
fix(deps): update rust crate netlink-socket2 to 0.3
2026-04-14 12:07:32 +07:00
Nils Andreas Svee
8739ed4419
fix(metrics): use AtomicU32 for drop counter to support MIPS targets
...
Also bumps version to 0.4.1.
2026-04-14 02:14:55 +07:00
Nils Andreas Svee
99e80c381d
build: bump package version to 0.4.0
2026-04-14 02:09:20 +07:00
Nils Andreas Svee
dd8735f46e
chore(deps): update icmp-socket2 to 0.4.2
...
Update the icmp-socket2 dependency version in Cargo.toml and Cargo.lock to incorporate the latest upstream changes.
2026-04-13 16:23:20 +07:00
Nils Andreas Svee
44f551d38c
feat(observability): Add InfluxDB Line Protocol metrics module and config
2026-04-13 15:01:45 +07:00
Nils Andreas Svee
8461d29788
build: bump version to 0.3.0
...
Update package version in Cargo.toml and Cargo.lock to reflect a new release.
2026-04-01 12:55:52 +07:00
Nils Andreas Svee
050291990a
build: migrate from icmp-socket to icmp-socket2
2026-04-01 12:52:19 +07:00
Nils Andreas Svee
eb88107bd0
chore(deps): Remove 'time' crate
2026-02-22 12:13:13 +07:00
Nils Andreas Svee
830e21363a
refactor: replace rand crate with fastrand
...
Replaces the `rand` crate with `fastrand` for improved performance in rate control and reflector selection.
2026-02-22 00:33:57 +07:00
Nils Andreas Svee
986b649a37
feat(netlink): Refactors to use netlink-socket2
...
Migrates netlink implementation to use netlink-socket2 and netlink-bindings crates, replacing neli crate for improved socket handling. Removes unused dependencies.
2026-02-21 23:10:48 +07:00
Nils Andreas Svee
6a49ad9112
Refactor(netlink): Replaces zerocopy with bytemuck
...
Migrates from `zerocopy` to `bytemuck` for improved data serialization and deserialization in netlink communication. This enhances maintainability.
2026-02-21 19:09:10 +07:00
Nils Andreas Svee
5838b0b9ee
refactor: replace bincode with zerocopy
...
Replaces bincode with zerocopy for deserialization of network data, improving performance and reducing dependencies.
2026-02-21 18:44:43 +07:00
Nils Andreas Svee
f5d3776159
refactor: migrate ICMP handling to icmp-socket crate
2026-02-21 17:13:54 +07:00
Nils Andreas Svee
9fb0e0cfe7
chore: update deps
2026-02-20 22:56:04 +07:00
Nils Andreas Svee
4670345caa
build: update rustix and dependencies
...
Update rustix to version 1.1 and refresh the Cargo lockfile to ensure compatibility with the latest transitive dependency versions.
2026-02-20 22:49:11 +07:00
Nils Andreas Svee
49b076d10c
chore: upgrade to new major version of deps
2025-05-09 00:08:25 +07:00
Nils Andreas Svee
e70451a4f4
chore: update to rust edition 2024 and bump version
2025-05-08 19:47:08 +07:00
dependabot[bot]
f946bd6cf6
build(deps): bump rand from 0.8.5 to 0.9.1
...
Bumps [rand](https://github.com/rust-random/rand ) from 0.8.5 to 0.9.1.
- [Release notes](https://github.com/rust-random/rand/releases )
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-random/rand/compare/0.8.5...rand_core-0.9.1 )
---
updated-dependencies:
- dependency-name: rand
dependency-version: 0.9.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-05-08 19:18:43 +07:00
dependabot[bot]
548965c600
build(deps): bump etherparse from 0.13.0 to 0.18.0
...
Bumps [etherparse](https://github.com/JulianSchmid/etherparse ) from 0.13.0 to 0.18.0.
- [Release notes](https://github.com/JulianSchmid/etherparse/releases )
- [Changelog](https://github.com/JulianSchmid/etherparse/blob/master/changelog.md )
- [Commits](https://github.com/JulianSchmid/etherparse/compare/v0.13.0...v0.18.0 )
---
updated-dependencies:
- dependency-name: etherparse
dependency-version: 0.18.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-05-08 19:17:52 +07:00
dependabot[bot]
48f5e2009a
build(deps): bump byteorder from 1.4.3 to 1.5.0
...
Bumps [byteorder](https://github.com/BurntSushi/byteorder ) from 1.4.3 to 1.5.0.
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md )
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.4.3...1.5.0 )
---
updated-dependencies:
- dependency-name: byteorder
dependency-version: 1.5.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-05-08 19:16:44 +07:00
Nils Andreas Svee
4a1368cd7a
revert socket2 to 0.4.x
2023-03-12 01:59:44 +01:00
Nils Andreas Svee
f7c2464a80
Update dependencies
2023-03-07 14:59:44 +01:00