diff --git a/.cargo/audit.toml b/.cargo/audit.toml new file mode 100644 index 00000000..e59f82f4 --- /dev/null +++ b/.cargo/audit.toml @@ -0,0 +1,4 @@ +[advisories] +ignore = ["RUSTSEC-2024-0320", "RUSTSEC-2024-0436", "RUSTSEC-2025-0057", "RUSTSEC-2025-0046"] +informational_warnings = ["unmaintained"] # warn for categories of informational advisories +severity_threshold = "low" # CVSS severity ("none", "low", "medium", "high", "critical") diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 888bfd79..fc420847 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -2,40 +2,48 @@ version: 2 updates: - package-ecosystem: "cargo" directory: "/" + target-branch: "develop" schedule: interval: "weekly" - package-ecosystem: "cargo" directory: "/crates/app/tests/http_search_filter" + target-branch: "develop" schedule: interval: "weekly" - package-ecosystem: "cargo" directory: "/crates/wasm-blueprints/rust/" + target-branch: "develop" schedule: interval: "weekly" - package-ecosystem: "github-actions" directory: "/" + target-branch: "develop" schedule: interval: "monthly" - package-ecosystem: "docker" directory: "/" + target-branch: "develop" schedule: interval: "weekly" - package-ecosystem: "gomod" directory: "/crates/wasm-blueprints/golang/" + target-branch: "develop" schedule: interval: "weekly" - package-ecosystem: "rust-toolchain" directory: "/" + target-branch: "develop" schedule: interval: "weekly" - package-ecosystem: "npm" directory: "/crates/wasm-blueprints/js/" + target-branch: "develop" schedule: interval: "weekly" diff --git a/.github/workflows/automerge.yml b/.github/workflows/automerge.yml new file mode 100644 index 00000000..241c0cb4 --- /dev/null +++ b/.github/workflows/automerge.yml @@ -0,0 +1,18 @@ +name: Dependabot auto-merge + +on: pull_request + +permissions: + contents: write + pull-requests: write + +jobs: + dependabot: + runs-on: ubuntu-latest + if: ${{ github.actor == 'dependabot[bot]' }} + steps: + - name: Enable auto-merge for Dependabot PRs + run: gh pr merge --auto --merge "$PR_URL" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2e22c764..514bb658 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -79,7 +79,7 @@ jobs: build-for-targets: name: Build for targets - needs: check + # needs: check runs-on: ${{ matrix.platforms.os }} continue-on-error: true permissions: @@ -90,21 +90,27 @@ jobs: - os: macos-14 target: aarch64-apple-darwin features: "" - - os: macos-14-large + - os: macos-15-intel target: x86_64-apple-darwin features: "" - os: ubuntu-latest target: x86_64-unknown-linux-gnu features: "" + - os: ubuntu-latest + target: x86_64-unknown-linux-musl + features: "--no-default-features --features ssl-vendored" - os: ubuntu-24.04-arm target: aarch64-unknown-linux-gnu features: "" + - os: ubuntu-24.04-arm + target: aarch64-unknown-linux-musl + features: "--no-default-features --features ssl-vendored,cmake-build" - os: windows-latest target: x86_64-pc-windows-gnu - features: "--no-default-features" + features: "--no-default-features --features cmake-build" - os: windows-latest target: x86_64-pc-windows-msvc - features: "--no-default-features --features ssl-vendored" + features: "--no-default-features --features ssl-vendored,cmake-build" steps: - uses: actions/checkout@v5 with: diff --git a/.github/workflows/developer-experience.yml b/.github/workflows/developer-experience.yml index 607abda8..757880dc 100644 --- a/.github/workflows/developer-experience.yml +++ b/.github/workflows/developer-experience.yml @@ -94,7 +94,7 @@ jobs: with: persist-credentials: false - name: Setup JS ${{ env.JS_VERSION }} - uses: actions/setup-node@v5 + uses: actions/setup-node@v6 with: node-version: ${{ env.JS_VERSION }} - name: Setup Go ${{ env.GOLANG_VERSION }} diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index a63dd579..b6e402f2 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -77,9 +77,15 @@ jobs: - os: ubuntu-latest target: x86_64-unknown-linux-gnu features: "" + - os: ubuntu-latest + target: x86_64-unknown-linux-musl + features: "" - os: ubuntu-24.04-arm target: aarch64-unknown-linux-gnu features: "" + - os: ubuntu-24.04-arm + target: aarch64-unknown-linux-musl + features: "" - os: windows-latest target: x86_64-pc-windows-gnu features: "--no-default-features" diff --git a/.github/workflows/tag.yml b/.github/workflows/tag.yml index da66e9aa..810ca66d 100644 --- a/.github/workflows/tag.yml +++ b/.github/workflows/tag.yml @@ -33,6 +33,8 @@ jobs: run: git fetch --tags origin - name: Install Rust uses: dtolnay/rust-toolchain@stable + with: + components: rustc, cargo - uses: Swatinem/rust-cache@v2 - name: Configure git run: | diff --git a/Cargo.lock b/Cargo.lock index 2d3d4617..f74dfc79 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -352,9 +352,9 @@ checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" [[package]] name = "bytesize" -version = "2.1.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5c434ae3cf0089ca203e9019ebe529c47ff45cefe8af7c85ecb734ef541822f" +checksum = "c99fa31e08a43eaa5913ef68d7e01c37a2bdce6ed648168239ad33b7d30a9cd8" [[package]] name = "calloop" @@ -482,9 +482,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.44" +version = "1.2.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37521ac7aabe3d13122dc382493e20c9416f299d2ccd5b3a5340a2570cdeb0f3" +checksum = "35900b6c8d709fb1d854671ae27aeaa9eec2f8b01b364e1619a40da3e6fe2afe" dependencies = [ "find-msvc-tools", "jobserver", @@ -1003,9 +1003,9 @@ dependencies = [ [[package]] name = "curl-sys" -version = "0.4.83+curl-8.15.0" +version = "0.4.84+curl-8.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5830daf304027db10c82632a464879d46a3f7c4ba17a31592657ad16c719b483" +checksum = "abc4294dc41b882eaff37973c2ec3ae203d0091341ee68fbadd1d06e0c18a73b" dependencies = [ "cc", "libc", @@ -1016,6 +1016,12 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "current_platform" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a74858bcfe44b22016cb49337d7b6f04618c58e5dbfdef61b06b8c434324a0bc" + [[package]] name = "cursor-icon" version = "1.2.0" @@ -1801,9 +1807,9 @@ checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" [[package]] name = "hyper" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb3aa54a13a0dfe7fbe3a59e0c76093041720fdc77b110cc0fc260fafb4dc51e" +checksum = "1744436df46f0bde35af3eda22aeaba453aada65d8f1c171cd8a5f59030bd69f" dependencies = [ "atomic-waker", "bytes", @@ -2045,9 +2051,9 @@ dependencies = [ [[package]] name = "indicatif" -version = "0.18.2" +version = "0.18.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ade6dfcba0dfb62ad59e59e7241ec8912af34fd29e0e743e3db992bd278e8b65" +checksum = "9375e112e4b463ec1b1c6c011953545c65a30164fbab5b581df32b3abf0dcb88" dependencies = [ "console 0.16.1", "portable-atomic", @@ -2117,9 +2123,9 @@ checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "iri-string" -version = "0.7.8" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2" +checksum = "4f867b9d1d896b67beb18518eda36fdb77a32ea590de864f1325b294a6d14397" dependencies = [ "memchr", "serde", @@ -2308,9 +2314,9 @@ dependencies = [ [[package]] name = "libz-sys" -version = "1.1.22" +version = "1.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b70e7a7df205e92a1a4cd9aaae7898dac0aa555503cc0a649494d0d60e7651d" +checksum = "15d118bbf3771060e7311cc7bb0545b01d08a8b4a7de949198dec1fa0ca1c0f7" dependencies = [ "cc", "libc", @@ -2762,9 +2768,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.74" +version = "0.10.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24ad14dd45412269e1a30f52ad8f0664f0f4f4a89ee8fe28c3b3527021ebb654" +checksum = "08838db121398ad17ab8531ce9de97b244589089e290a384c900cb9ff7434328" dependencies = [ "bitflags", "cfg-if", @@ -2803,9 +2809,9 @@ dependencies = [ [[package]] name = "openssl-sys" -version = "0.9.110" +version = "0.9.111" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a9f0075ba3c21b09f8e8b2026584b1d18d49388648f2fbbf3c97ea8deced8e2" +checksum = "82cab2d520aa75e3c58898289429321eb788c3106963d0dc886ec7a5f4adc321" dependencies = [ "cc", "libc", @@ -2935,7 +2941,7 @@ checksum = "740ebea15c5d1428f910cd1a5f52cebf8d25006245ed8ade92702f4943d91e07" dependencies = [ "base64 0.22.1", "indexmap", - "quick-xml 0.38.3", + "quick-xml 0.38.4", "serde", "time", ] @@ -3125,9 +3131,9 @@ dependencies = [ [[package]] name = "quick-xml" -version = "0.38.3" +version = "0.38.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42a232e7487fc2ef313d96dde7948e7a3c05101870d8985e4fd8d26aedd27b89" +checksum = "b66c2058c55a409d601666cffe35f04333cf1013010882cec174a7467cd4e21c" dependencies = [ "memchr", ] @@ -3156,9 +3162,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.41" +version = "1.0.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" +checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" dependencies = [ "proc-macro2", ] @@ -3541,9 +3547,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.34" +version = "0.23.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a9586e9ee2b4f8fab52a0048ca7334d7024eef48e2cb9407e3497bb7cab7fa7" +checksum = "533f54bc6a7d4f647e46ad909549eda97bf5afc1585190ef692b4286b198bd8f" dependencies = [ "log", "once_cell", @@ -3554,15 +3560,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "rustls-pemfile" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" -dependencies = [ - "rustls-pki-types", -] - [[package]] name = "rustls-pki-types" version = "1.13.0" @@ -3628,9 +3625,9 @@ dependencies = [ [[package]] name = "schemars" -version = "1.0.5" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1317c3bf3e7df961da95b0a56a172a02abead31276215a0497241a7624b487ce" +checksum = "9558e172d4e8533736ba97870c4b2cd63f84b382a3d6eb063da41b91cce17289" dependencies = [ "chrono", "dyn-clone", @@ -3644,9 +3641,9 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "1.0.5" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f760a6150d45dd66ec044983c124595ae76912e77ed0b44124cb3e415cce5d9" +checksum = "301858a4023d78debd2353c7426dc486001bddc91ae31a76fb1f55132f7e2633" dependencies = [ "proc-macro2", "quote", @@ -4037,9 +4034,9 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" -version = "2.0.108" +version = "2.0.110" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da58917d35242480a05c2897064da0a80589a2a0476c9a3f2fdc83b53502e917" +checksum = "a99801b5bd34ede4cf3fc688c5919368fea4e4814a4664359503e6015b280aea" dependencies = [ "proc-macro2", "quote", @@ -4680,16 +4677,15 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "ureq" -version = "3.1.2" +version = "3.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99ba1025f18a4a3fc3e9b48c868e9beb4f24f4b4b1a325bada26bd4119f46537" +checksum = "d39cb1dbab692d82a977c0392ffac19e188bd9186a9f32806f0aaa859d75585a" dependencies = [ "base64 0.22.1", "flate2", "log", "percent-encoding", "rustls", - "rustls-pemfile", "rustls-pki-types", "ureq-proto", "utf-8", @@ -5898,6 +5894,7 @@ dependencies = [ "chrono", "clap", "const_format", + "current_platform", "extism", "futures", "futures-batch", diff --git a/Cargo.toml b/Cargo.toml index f79eb104..fc3325c1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -43,6 +43,7 @@ serde_json = { version = "1.0.145", features = ["preserve_order"] } serde = { version = "1.0.228", features = ["derive"] } strum = {version = "0.27.2" } tracing = "0.1.41" +rdkafka = { version = "0.38.0" } [profile.release] opt-level = 3 @@ -85,3 +86,10 @@ transmute_int_to_float = "warn" transmute_ptr_to_ref = "warn" transmute_undefined_repr = "warn" missing_errors_doc = {level = "allow", priority = 2 } +deref_nullptr = "deny" +integer_to_ptr_transmutes = "deny" +invalid_value = "deny" +invalid_from_utf8 = "deny" +never_type_fallback_flowing_into_unsafe = "deny" +ptr_to_integer_transmute_in_consts = "deny" +static_mut_refs = "deny" diff --git a/Cross.toml b/Cross.toml index bd6fba7b..3f07d6d2 100644 --- a/Cross.toml +++ b/Cross.toml @@ -11,6 +11,30 @@ image = "ghcr.io/cross-rs/x86_64-unknown-linux-gnu:main" [target.x86_64-pc-windows-gnu] image = "ghcr.io/cross-rs/x86_64-pc-windows-gnu:main" + +# Musl is though +# https://github.com/fede1024/kafka-view/blob/master/Dockerfile +# https://github.com/fede1024/rust-rdkafka/issues/88 +# https://github.com/Licenser/rust-rdkafka-musl/commit/bbaa8a391f2a32f36eb06e36f840c7989d0bf592 +[target.x86_64-unknown-linux-musl] +image = "ghcr.io/cross-rs/x86_64-unknown-linux-musl:main" +pre-build = [ + "apk add musl-gcc musl-tools curl musl-dev make python g++", + "ln -s '/usr/bin/g++' '/usr/bin/musl-g++'" +] + +[target.x86_64-unknown-linux-musl.env] +passthrough = [ + "CC='musl-gcc -static -Os'", + "CXX='/usr/bin/g++'", + "CFLAGS=-I/usr/local/musl/include", + "RUSTFLAGS='-C target-feature=-crt-static'" +] + +[target.x86_64-pc-windows-musl] +image = "ghcr.io/cross-rs/x86_64-pc-windows-musl:main" + + [target.x86_64-pc-windows-msvc] image = "ghcr.io/cross-rs/x86_64-pc-windows-msvc:main" diff --git a/crates/app/Cargo.toml b/crates/app/Cargo.toml index 045bd688..4b1bca28 100644 --- a/crates/app/Cargo.toml +++ b/crates/app/Cargo.toml @@ -20,7 +20,7 @@ lib = { workspace = true, features = ["native"] } itertools = "0.14.0" thousands = "0.2.0" indexmap = "2.12.0" -rdkafka = { version = "0.38.0", features = ["cmake-build"] } +rdkafka = { workspace = true } extism = { version = "1.12.0", features = [] } url = { version = "2.5.7", features = ["serde"] } resolve-path = "0.1.0" @@ -31,10 +31,11 @@ tracing = { workspace = true } [dev-dependencies] tempfile = "3.23.0" testing_logger = "0.1.1" -schemars = { version = "1.0.5", features = ["indexmap2", "url2"] } +schemars = { version = "1.1.0", features = ["indexmap2", "url2"] } [features] ssl-vendored = ["rdkafka/ssl-vendored"] gssapi-vendored = ["rdkafka/gssapi-vendored"] +cmake-build = ["rdkafka/cmake-build"] \ No newline at end of file diff --git a/crates/app/src/configuration/mod.rs b/crates/app/src/configuration/mod.rs index 1d78d650..671ee0ff 100644 --- a/crates/app/src/configuration/mod.rs +++ b/crates/app/src/configuration/mod.rs @@ -16,6 +16,8 @@ pub use cluster_config::SchemaRegistryConfig; pub use consumer_config::ConsumerConfig; pub use global_config::GlobalConfig; pub use internal_config::InternalConfig; +use tracing::debug; +use tracing::enabled; pub use yozefu_config::YozefuConfig; pub trait Configuration { @@ -41,6 +43,13 @@ pub trait Configuration { config.set(key, value); } + if enabled!(tracing::Level::DEBUG) { + config.set("debug", "consumer,cgrp,topic"); + for (k, v) in config.config_map().iter() { + debug!("'{}' set to '{}'", k, v); + } + } + config } } diff --git a/crates/bin/Cargo.toml b/crates/bin/Cargo.toml index 5df9e41a..da168dae 100644 --- a/crates/bin/Cargo.toml +++ b/crates/bin/Cargo.toml @@ -2,11 +2,7 @@ name = "yozefu" description.workspace = true keywords = ["kafka", "consumer", "avro", "tui", "ratatui"] -categories = [ - "command-line-utilities", - "gui", - "development-tools", -] +categories = ["command-line-utilities", "gui", "development-tools"] documentation.workspace = true version.workspace = true authors.workspace = true @@ -27,16 +23,11 @@ command = { workspace = true } console-subscriber = "0.5.0" [features] -default = ["ssl-vendored", "gssapi-vendored", "libz-static"] -ssl-vendored = [ - "command/ssl-vendored" -] -gssapi-vendored = [ - "command/gssapi-vendored" -] -libz-static = [ - "command/libz-static" -] +default = ["ssl-vendored", "gssapi-vendored", "libz-static", "cmake-build"] +ssl-vendored = ["command/ssl-vendored"] +gssapi-vendored = ["command/gssapi-vendored"] +libz-static = ["command/libz-static"] +cmake-build = ["command/cmake-build"] [package.metadata.cargo-machete] diff --git a/crates/command/Cargo.toml b/crates/command/Cargo.toml index ffc9ec31..5881f24e 100644 --- a/crates/command/Cargo.toml +++ b/crates/command/Cargo.toml @@ -28,14 +28,13 @@ clap = { version = "4.5.51", features = [ serde_json = { workspace = true } chrono = "0.4.42" strum = { workspace = true, features = ["derive", "strum_macros"] } -indicatif = { version = "0.18.2", features = ["tokio"] } +indicatif = { version = "0.18.3", features = ["tokio"] } tempfile = "3.23.0" tokio-util = "0.7.17" futures = "0.3.31" itertools = "0.14.0" tokio = { version = "1", features = ["full", "tracing"] } -rdkafka = { version = "0.38.0", features = [ - "cmake-build", +rdkafka = { workspace = true, features = [ "curl-static", "zstd", "external-lz4", @@ -51,6 +50,7 @@ tracing = { workspace = true } tracing-subscriber = { version = "0.3.20", features = ["env-filter"]} futures-batch = "0.7.0" thousands = "0.2.0" +current_platform = "0.2.0" [features] ssl-vendored = ["rdkafka/ssl-vendored", "tui/ssl-vendored", "app/ssl-vendored"] @@ -59,5 +59,5 @@ gssapi-vendored = [ "tui/gssapi-vendored", "app/gssapi-vendored", ] - libz-static = ["rdkafka/libz-static"] +cmake-build = ["rdkafka/cmake-build"] \ No newline at end of file diff --git a/crates/command/src/version.rs b/crates/command/src/version.rs index 5cf96fc7..a212126d 100644 --- a/crates/command/src/version.rs +++ b/crates/command/src/version.rs @@ -8,7 +8,6 @@ //! Yann Prono //! ``` use const_format::{formatcp, str_index}; -use std::env::consts::{ARCH, OS}; #[cfg(debug_assertions)] const BUILD_TYPE: &str = "debug"; @@ -27,13 +26,18 @@ const GIT_COMMIT: &str = match option_env!("GITHUB_SHA") { }; pub(super) const VERSION_MESSAGE: &str = formatcp!( - "{} ({}:{}, {} build, {} [{}]) \n{}\n{}", + r#" + Version {} + Profile {} + Commit {} on branch {} + Target {} + Repository {} + Authors {}"#, env!("CARGO_PKG_VERSION"), - GIT_BRANCH, - str_index!(GIT_COMMIT, 0..7), BUILD_TYPE, - OS, - ARCH, + str_index!(GIT_COMMIT, 0..7), + GIT_BRANCH, + current_platform::CURRENT_PLATFORM, env!("CARGO_PKG_REPOSITORY"), env!("CARGO_PKG_AUTHORS"), ); diff --git a/crates/lib/Cargo.toml b/crates/lib/Cargo.toml index 0db4b022..d8d168d2 100644 --- a/crates/lib/Cargo.toml +++ b/crates/lib/Cargo.toml @@ -31,7 +31,7 @@ byteorder = "1.5.0" insta = { version = "1.43.2", features = ["filters", "glob"] } protobuf = "3.7.2" tokio = { version = "1.48.0", features = ["rt", "macros"] } -schemars = { version = "1.0.5", features = ["indexmap2", "url2", "chrono04"]} +schemars = { version = "1.1.0", features = ["indexmap2", "url2", "chrono04"]} [features] native = [ diff --git a/crates/lib/src/kafka/schema.rs b/crates/lib/src/kafka/schema.rs index 1faa77f1..4f4434f8 100644 --- a/crates/lib/src/kafka/schema.rs +++ b/crates/lib/src/kafka/schema.rs @@ -11,7 +11,9 @@ pub struct SchemaId(pub u32); #[derive(Clone, Debug, Deserialize, Serialize, Hash, PartialEq, Eq)] #[serde(rename_all = "UPPERCASE")] #[cfg_attr(test, derive(schemars::JsonSchema))] +#[derive(Default)] pub enum SchemaType { + #[default] Json, Avro, Protobuf, @@ -55,12 +57,6 @@ impl SchemaId { } } -impl Default for SchemaType { - fn default() -> Self { - Self::Json - } -} - #[cfg(feature = "native")] const MAGIC_BYTE: u8 = 0; diff --git a/crates/lib/src/search/order.rs b/crates/lib/src/search/order.rs index 9dbbca48..4bd83830 100644 --- a/crates/lib/src/search/order.rs +++ b/crates/lib/src/search/order.rs @@ -20,27 +20,17 @@ pub struct OrderBy { pub keyword: OrderKeyword, } -#[derive(Debug, Clone, PartialEq, Eq)] +#[derive(Debug, Clone, PartialEq, Eq, Default)] pub enum OrderKeyword { Desc, + #[default] Asc, } -impl Default for Order { - fn default() -> Self { - Self::Timestamp - } -} - -impl Default for OrderKeyword { - fn default() -> Self { - Self::Asc - } -} - /// You can order kafka records by the following fields. -#[derive(Debug, Clone, PartialEq, Eq)] +#[derive(Debug, Clone, PartialEq, Eq, Default)] pub enum Order { + #[default] Timestamp, Key, Value, diff --git a/crates/tui/Cargo.toml b/crates/tui/Cargo.toml index 2c0c78a1..e742338c 100644 --- a/crates/tui/Cargo.toml +++ b/crates/tui/Cargo.toml @@ -26,7 +26,7 @@ ratatui = { version = "0.29.0", features = [ ] } crossterm = { version = "0.29.0", features = ["event-stream"] } itertools = "0.14.0" -bytesize = { version = "2.1.0" } +bytesize = { version = "2.2.0" } nom = "8.0.0" throbber-widgets-tui = { version = "0.9.0" } futures = "0.3.31" @@ -39,7 +39,7 @@ rayon = "1.11.0" lib = { workspace = true } app = { workspace = true } tracing = { workspace = true } -rdkafka = { version = "0.38.0", features = ["cmake-build"] } +rdkafka = { workspace = true } timeago = "0.5.0" futures-batch = "0.7.0" syntect = "5.3.0" @@ -49,7 +49,7 @@ resolve-path = "0.1.0" [features] ssl-vendored = ["rdkafka/ssl-vendored"] gssapi-vendored = ["rdkafka/gssapi-vendored"] - +cmake-build = ["rdkafka/cmake-build"] [dev-dependencies] indexmap = "2.12.0" diff --git a/crates/tui/src/component/mod.rs b/crates/tui/src/component/mod.rs index 90bef138..a01c7f47 100644 --- a/crates/tui/src/component/mod.rs +++ b/crates/tui/src/component/mod.rs @@ -47,9 +47,10 @@ pub(crate) type ConcurrentRecordsBuffer = LazyLock>>; static BUFFER: ConcurrentRecordsBuffer = LazyLock::new(|| Arc::new(Mutex::new(RecordsBuffer::new()))); -#[derive(Debug, Clone, Display, Hash, PartialEq, Eq, Deserialize, PartialOrd, Ord)] +#[derive(Debug, Clone, Display, Hash, PartialEq, Eq, Deserialize, PartialOrd, Ord, Default)] pub(crate) enum ComponentName { Records, + #[default] Topics, Header, Footer, @@ -74,12 +75,6 @@ impl ComponentName { } } -impl Default for ComponentName { - fn default() -> Self { - Self::Topics - } -} - pub(crate) trait WithHeight: Component { fn content_height(&self) -> usize { 0 diff --git a/crates/wasm-blueprints/js/.dockerignore b/crates/wasm-blueprints/js/.dockerignore new file mode 100644 index 00000000..1293285e --- /dev/null +++ b/crates/wasm-blueprints/js/.dockerignore @@ -0,0 +1,6 @@ +* +!src +!tests +!Makefile +!package.json +!esbuild.js \ No newline at end of file diff --git a/crates/wasm-blueprints/js/.gitignore b/crates/wasm-blueprints/js/.gitignore index 76add878..3a8ec2b3 100644 --- a/crates/wasm-blueprints/js/.gitignore +++ b/crates/wasm-blueprints/js/.gitignore @@ -1,2 +1,3 @@ node_modules -dist \ No newline at end of file +dist +package-lock.json \ No newline at end of file diff --git a/crates/wasm-blueprints/js/Makefile b/crates/wasm-blueprints/js/Makefile index 48327f1f..b936d622 100644 --- a/crates/wasm-blueprints/js/Makefile +++ b/crates/wasm-blueprints/js/Makefile @@ -23,7 +23,7 @@ test: $(TARGET) ## Run the tests cat "tests/no-match.json" | extism call --stdin $(TARGET) matches | grep -q '"match":false' clean: ## Clean the wasm file and the target directory - rm -rf dist + rm -rf dist $(TARGET) help: ## Show this help @echo "Variables:" diff --git a/crates/wasm-blueprints/js/package-lock.json b/crates/wasm-blueprints/js/package-lock.json deleted file mode 100644 index 8880b354..00000000 --- a/crates/wasm-blueprints/js/package-lock.json +++ /dev/null @@ -1,500 +0,0 @@ -{ - "name": "yozefu-wasm-blueprints-rust", - "version": "1.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "yozefu-wasm-blueprints-rust", - "version": "1.0.0", - "license": "BSD-3-Clause", - "devDependencies": { - "esbuild": "^0.25.12" - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", - "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/android-arm/-/android-arm-0.25.12.tgz", - "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", - "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/android-x64/-/android-x64-0.25.12.tgz", - "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", - "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", - "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", - "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", - "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", - "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", - "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", - "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", - "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", - "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", - "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", - "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", - "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", - "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", - "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", - "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", - "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", - "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openharmony-arm64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", - "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openharmony" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", - "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", - "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", - "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", - "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" - } - }, - "node_modules/esbuild": { - "version": "0.25.12", - "resolved": "https://nexus.maif.io/repository/npm-public/esbuild/-/esbuild-0.25.12.tgz", - "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=18" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.12", - "@esbuild/android-arm": "0.25.12", - "@esbuild/android-arm64": "0.25.12", - "@esbuild/android-x64": "0.25.12", - "@esbuild/darwin-arm64": "0.25.12", - "@esbuild/darwin-x64": "0.25.12", - "@esbuild/freebsd-arm64": "0.25.12", - "@esbuild/freebsd-x64": "0.25.12", - "@esbuild/linux-arm": "0.25.12", - "@esbuild/linux-arm64": "0.25.12", - "@esbuild/linux-ia32": "0.25.12", - "@esbuild/linux-loong64": "0.25.12", - "@esbuild/linux-mips64el": "0.25.12", - "@esbuild/linux-ppc64": "0.25.12", - "@esbuild/linux-riscv64": "0.25.12", - "@esbuild/linux-s390x": "0.25.12", - "@esbuild/linux-x64": "0.25.12", - "@esbuild/netbsd-arm64": "0.25.12", - "@esbuild/netbsd-x64": "0.25.12", - "@esbuild/openbsd-arm64": "0.25.12", - "@esbuild/openbsd-x64": "0.25.12", - "@esbuild/openharmony-arm64": "0.25.12", - "@esbuild/sunos-x64": "0.25.12", - "@esbuild/win32-arm64": "0.25.12", - "@esbuild/win32-ia32": "0.25.12", - "@esbuild/win32-x64": "0.25.12" - } - } - } -} diff --git a/deny.toml b/deny.toml index dd94ec89..25e58ce9 100644 --- a/deny.toml +++ b/deny.toml @@ -69,7 +69,10 @@ feature-depth = 1 # A list of advisory IDs to ignore. Note that ignored advisories will still # output a note when they are encountered. ignore = [ - "RUSTSEC-2024-0436" # paste crate + "RUSTSEC-2025-0057", # fxhash - no longer maintained + "RUSTSEC-2024-0436", # paste crate + "RUSTSEC-2025-0046", # Host panic with fd_renumber WASIp1 function + "RUSTSEC-2024-0320" # yaml-rust is unmaintained. #"RUSTSEC-0000-0000", #{ id = "RUSTSEC-0000-0000", reason = "you can specify a reason the advisory is ignored" }, #"a-crate-that-is-yanked@0.1.1", # you can also ignore yanked crate versions if you wish @@ -109,7 +112,6 @@ exceptions = [ # list { allow = ["Zlib"], crate = "foldhash" }, { allow = ["Zlib"], crate = "throbber-widgets-tui" }, - { allow = ["Zlib"], crate = "adler32" }, { allow = ["Zlib"], crate = "const_format" }, { allow = ["Zlib"], crate = "konst_macro_rules" }, { allow = ["Zlib"], crate = "const_format_proc_macros" }, @@ -157,7 +159,7 @@ registries = [ # https://embarkstudios.github.io/cargo-deny/checks/bans/cfg.html [bans] # Lint level for when multiple versions of the same crate are detected -multiple-versions = "warn" +multiple-versions = "allow" # Lint level for when a crate version requirement is `*` wildcards = "allow" # The graph highlighting used when creating dotgraphs for crates @@ -213,7 +215,33 @@ deny = [ # Certain crates/versions that will be skipped when doing duplicate detection. skip = [ - #"ansi_term@0.11.0", + "base64", + "windows_x86_64_msvc", + "windows-targets@0.52.6", + "windows_x86_64_gnu@0.53.1", + "windows-sys@ 0.59.0", + "windows-sys@ 0.60.2", + "windows-strings@0.4.2", + "windows-result@0.3.4", + "windows-link@0.1.3", + "wast@35.0.2", + "wasm-encoder@0.224.1", + "unicode-width@0.1.14", + "toml_edit@0.22.27", + "toml_datetime@0.6.11", + "toml@0.8.23", + "serde_spanned@0.6.9", + "strum_macros@0.26.4", + "thiserror-impl@1.0.69", + "thiserror@1.0.69", + "strum@0.26.3", + "rustix@0.38.44", + "rand_core@0.6.4", + "linux-raw-sys@0.4.15", + "rand_chacha@0.3.1", + "rand@0.8.5", + "quick-xml@0.37.5", + "nom@7.1.3" #{ crate = "ansi_term@0.11.0", reason = "you can specify a reason why it can't be updated/removed" }, ] # Similarly to `skip` allows you to skip certain crates during duplicate diff --git a/docs/demo/MyProducer.java b/docs/demo/MyProducer.java index 9e5ef01e..b36029ea 100644 --- a/docs/demo/MyProducer.java +++ b/docs/demo/MyProducer.java @@ -11,7 +11,7 @@ //DEPS tech.allegro.schema.json2avro:converter:0.3.0 //DEPS com.google.protobuf:protobuf-java:4.32.1 //DEPS info.picocli:picocli:4.7.7 - +//DEPS org.slf4j:slf4j-api:2.0.17 //FILES avro/key-schema.json=avro/key-schema.json //FILES avro/value-schema.json=avro/value-schema.json