From 980c6b7fcfb0df04bcff833360c1331a96b78885 Mon Sep 17 00:00:00 2001 From: Yann Prono Date: Sun, 21 Dec 2025 19:55:55 +0100 Subject: [PATCH 1/3] ci: use cargo shear --- .github/workflows/build.yml | 14 ++ Cargo.lock | 180 +------------------------ Cargo.toml | 2 - crates/app/Cargo.toml | 1 - crates/bin/Cargo.toml | 7 +- crates/lib/Cargo.toml | 3 +- crates/tui/Cargo.toml | 2 - crates/wasm-blueprints/rust/Cargo.toml | 6 +- 8 files changed, 25 insertions(+), 190 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6141b2ac..66a7ba4d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -250,6 +250,20 @@ jobs: - name: Build with VitePress run: npm run build --prefix docs + shear: + name: Shear + runs-on: ubuntu-latest + needs: [check] + permissions: + contents: read + steps: + - uses: actions/checkout@v6 + with: + persist-credentials: false + - run: cargo install --locked cargo-shear + - name: Run cargo Shear + run: cargo shear + lychee: name: Lychee runs-on: ubuntu-latest diff --git a/Cargo.lock b/Cargo.lock index 8b69e849..06a70bf8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -388,7 +388,7 @@ dependencies = [ "tokio", "tokio-stream", "tokio-util", - "tonic 0.13.1", + "tonic", "tower-service", "url", "winapi", @@ -401,8 +401,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "40b3e79f8bd0f25f32660e3402afca46fd91bebaf135af017326d905651f8107" dependencies = [ "prost 0.13.5", - "prost-types 0.13.5", - "tonic 0.13.1", + "prost-types", + "tonic", "ureq 2.12.1", ] @@ -805,46 +805,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[package]] -name = "console-api" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8599749b6667e2f0c910c1d0dff6901163ff698a52d5a39720f61b5be4b20d3" -dependencies = [ - "futures-core", - "prost 0.14.1", - "prost-types 0.14.1", - "tonic 0.14.2", - "tonic-prost", - "tracing-core", -] - -[[package]] -name = "console-subscriber" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb4915b7d8dd960457a1b6c380114c2944f728e7c65294ab247ae6b6f1f37592" -dependencies = [ - "console-api", - "crossbeam-channel", - "crossbeam-utils", - "futures-task", - "hdrhistogram", - "humantime", - "hyper-util", - "prost 0.14.1", - "prost-types 0.14.1", - "serde", - "serde_json", - "thread_local", - "tokio", - "tokio-stream", - "tonic 0.14.2", - "tracing", - "tracing-core", - "tracing-subscriber", -] - [[package]] name = "const_format" version = "0.2.35" @@ -1080,15 +1040,6 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "crossbeam-channel" -version = "0.5.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" -dependencies = [ - "crossbeam-utils", -] - [[package]] name = "crossbeam-deque" version = "0.8.6" @@ -1481,16 +1432,6 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "env_logger" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3" -dependencies = [ - "log", - "regex", -] - [[package]] name = "equivalent" version = "1.0.2" @@ -1943,19 +1884,6 @@ version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" -[[package]] -name = "hdrhistogram" -version = "7.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" -dependencies = [ - "base64 0.21.7", - "byteorder", - "flate2", - "nom 7.1.3", - "num-traits", -] - [[package]] name = "heck" version = "0.5.0" @@ -2028,12 +1956,6 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" -[[package]] -name = "humantime" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" - [[package]] name = "hyper" version = "1.8.1" @@ -3492,35 +3414,6 @@ dependencies = [ "prost 0.13.5", ] -[[package]] -name = "prost-types" -version = "0.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9b4db3d6da204ed77bb26ba83b6122a73aeb2e87e25fbf7ad2e84c4ccbf8f72" -dependencies = [ - "prost 0.14.1", -] - -[[package]] -name = "protobuf" -version = "3.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d65a1d4ddae7d8b5de68153b48f6aa3bba8cb002b243dbdbc55a5afbc98f99f4" -dependencies = [ - "once_cell", - "protobuf-support", - "thiserror 1.0.69", -] - -[[package]] -name = "protobuf-support" -version = "3.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e36c2f31e0a47f9280fb347ef5e461ffcd2c52dd520d8e216b52f93b0b0d7d6" -dependencies = [ - "thiserror 1.0.69", -] - [[package]] name = "pulley-interpreter" version = "37.0.3" @@ -3574,28 +3467,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "quickcheck" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "588f6378e4dd99458b60ec275b4477add41ce4fa9f64dcba6f15adccb19b50d6" -dependencies = [ - "env_logger", - "log", - "rand 0.8.5", -] - -[[package]] -name = "quickcheck_macros" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f71ee38b42f8459a88d3362be6f9b841ad2d5421844f61eb1c59c11bff3ac14a" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "quote" version = "1.0.42" @@ -5108,46 +4979,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "tonic" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb7613188ce9f7df5bfe185db26c5814347d110db17920415cf2fbcad85e7203" -dependencies = [ - "async-trait", - "axum", - "base64 0.22.1", - "bytes", - "h2", - "http", - "http-body", - "http-body-util", - "hyper", - "hyper-timeout", - "hyper-util", - "percent-encoding", - "pin-project", - "socket2 0.6.1", - "sync_wrapper", - "tokio", - "tokio-stream", - "tower", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tonic-prost" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66bd50ad6ce1252d87ef024b3d64fe4c3cf54a86fb9ef4c631fdd0ded7aeaa67" -dependencies = [ - "bytes", - "prost 0.14.1", - "tonic 0.14.2", -] - [[package]] name = "tower" version = "0.5.2" @@ -6571,7 +6402,6 @@ name = "yozefu" version = "0.0.23" dependencies = [ "assert_cmd", - "console-subscriber", "testcontainers", "tokio", "yozefu-command", @@ -6591,7 +6421,6 @@ dependencies = [ "schemars 1.1.0", "serde", "serde_json", - "tempfile", "testing_logger", "thousands", "tracing", @@ -6641,7 +6470,6 @@ dependencies = [ "mockito", "nom 8.0.0", "proptest", - "protobuf", "rdkafka", "reqwest", "schemars 1.1.0", @@ -6668,8 +6496,6 @@ dependencies = [ "itertools 0.14.0", "nom 8.0.0", "open", - "quickcheck", - "quickcheck_macros", "ratatui", "rayon", "rdkafka", diff --git a/Cargo.toml b/Cargo.toml index 7fdfdb0a..d1d22b91 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -36,9 +36,7 @@ rust-version = "1.85.0" lib = { package = "yozefu-lib", path = "crates/lib", version = "0.0.23" } app = { package = "yozefu-app", path = "crates/app", version = "0.0.23" } command = { package = "yozefu-command", path = "crates/command", version = "0.0.23" } -yozefu = { package = "yozefu", path = "crates/bin", version = "0.0.23" } tui = { package = "yozefu-tui", path = "crates/tui", version = "0.0.23" } -wasm-types = { package = "wasm-types", path = "crates/wasm-types", version = "0.0.23" } serde_json = { version = "1.0.145", features = ["preserve_order"] } serde = { version = "1.0.228", features = ["derive"] } strum = {version = "0.27.2" } diff --git a/crates/app/Cargo.toml b/crates/app/Cargo.toml index 4211a576..e9b22c7a 100644 --- a/crates/app/Cargo.toml +++ b/crates/app/Cargo.toml @@ -29,7 +29,6 @@ chrono = "0.4.42" tracing = { workspace = true } [dev-dependencies] -tempfile = "3.23.0" testing_logger = "0.1.1" schemars = { workspace = true } diff --git a/crates/bin/Cargo.toml b/crates/bin/Cargo.toml index 5f599fa0..8c873f7b 100644 --- a/crates/bin/Cargo.toml +++ b/crates/bin/Cargo.toml @@ -24,9 +24,6 @@ path = "src/main.rs" [dependencies] tokio = { version = "1", features = ["full", "tracing"] } command = { workspace = true } -console-subscriber = "0.5.0" -assert_cmd = "2.1.1" -testcontainers = { version = "0.25.0", features = ["blocking"] } [features] default = ["ssl-vendored", "libz-static"] @@ -40,6 +37,10 @@ libz-static = [ "command/libz-static" ] +[dev-dependencies] +assert_cmd = "2.1.1" +testcontainers = { version = "0.25.0", features = ["blocking"] } + [package.metadata.cargo-machete] ignored = ["console-subscriber"] diff --git a/crates/lib/Cargo.toml b/crates/lib/Cargo.toml index c44f44ed..43900a3a 100644 --- a/crates/lib/Cargo.toml +++ b/crates/lib/Cargo.toml @@ -26,14 +26,13 @@ url = "2.5.7" apache-avro = "0.21.0" reqwest = { version = "0.12.26", features = ["json"] } byteorder = "1.5.0" -mockito = "1.7.1" [dev-dependencies] insta = { version = "1.45.0", features = ["filters", "glob", "json"] } -protobuf = "3.7.2" tokio = { version = "1.48.0", features = ["rt", "macros", "rt-multi-thread"] } schemars = { workspace = true, features = ["indexmap2", "url2", "chrono04"]} proptest = "1.9.0" +mockito = "1.7.1" [features] native = [ diff --git a/crates/tui/Cargo.toml b/crates/tui/Cargo.toml index da30ee94..6bec4ff5 100644 --- a/crates/tui/Cargo.toml +++ b/crates/tui/Cargo.toml @@ -55,5 +55,3 @@ gssapi-vendored = ["rdkafka/gssapi-vendored"] indexmap = "2.12.1" insta = { version = "1.45.0", features = ["filters"] } tempfile = "3.23.0" -quickcheck = "1" -quickcheck_macros = "1" diff --git a/crates/wasm-blueprints/rust/Cargo.toml b/crates/wasm-blueprints/rust/Cargo.toml index d663bc3f..8f6914a1 100644 --- a/crates/wasm-blueprints/rust/Cargo.toml +++ b/crates/wasm-blueprints/rust/Cargo.toml @@ -4,8 +4,8 @@ version = "0.1.0" edition = "2024" [dependencies] -extism-pdk = "1.3.0" -serde = {version = "1.0.219", features = ["derive"]} +extism-pdk = "1.4.1" +serde = {version = "1.0.228", features = ["derive"]} yozefu-wasm-types = { git = "https://github.com/MAIF/yozefu.git", branch="main" } #yozefu-wasm-types = { path = "../../wasm-types" } @@ -16,4 +16,4 @@ yozefu-wasm-types = { git = "https://github.com/MAIF/yozefu.git", branch="main" crate-type = ["cdylib"] [package.metadata.cargo-machete] -ignored = ["serde"] \ No newline at end of file +ignored = ["serde"] From cb9b121003c1cd60a464cc97c5ef708873733198 Mon Sep 17 00:00:00 2001 From: Yann Prono Date: Tue, 23 Dec 2025 12:23:37 +0100 Subject: [PATCH 2/3] docs: features for each target --- docs/what-is-yozefu/index.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/what-is-yozefu/index.md b/docs/what-is-yozefu/index.md index c92dc5f5..85932fa3 100644 --- a/docs/what-is-yozefu/index.md +++ b/docs/what-is-yozefu/index.md @@ -48,6 +48,19 @@ yozf --headless \ - Yōzefu has been tested on macOS Silicon but not on Windows or Linux. Feedback or contributions are welcome. +## Features + +Yozefu relies on [rdkafka](https://docs.rs/crate/rdkafka/latest/features) for Kafka connectivity. The following table summarizes the features available on each target platform. + +| Target | cmake-build | curl-static | zstd | ssl-vendored | external-lz4 | libz-static | gssapi-vendored | +| ------------------------- | :---------: | :---------: | :---: | :----------: | :----------: | :---------: | :-------------: | +| aarch64-apple-darwin | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | +| x86_64-apple-darwin | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | +| x86_64-unknown-linux-gnu | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | +| aarch64-unknown-linux-gnu | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | +| x86_64-pc-windows-gnu | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | +| x86_64-pc-windows-msvc | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | | + ## Screenshots Screenshot of the records view, a table displaying kafka records From 5aeac690e2001036b0e32117312fed3a4c7f57d2 Mon Sep 17 00:00:00 2001 From: Yann Prono Date: Fri, 26 Dec 2025 13:47:08 +0100 Subject: [PATCH 3/3] try dhio --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index fc00f750..e278ac28 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,7 +18,7 @@ EOF -FROM debian:trixie-slim AS final +FROM dhi.io/debian-base:trixie AS final ARG UID=10001 RUN useradd \ --shell "/sbin/nologin" \