Skip to content

fix: remove rust verifier (non native assets)#523

Open
frnandu wants to merge 1 commit intomasterfrom
fix-remove-rust-verifier
Open

fix: remove rust verifier (non native assets)#523
frnandu wants to merge 1 commit intomasterfrom
fix-remove-rust-verifier

Conversation

@frnandu
Copy link
Collaborator

@frnandu frnandu commented Mar 24, 2026

Summary by CodeRabbit

  • Chores
    • Removed the Rust event verifier package from the monorepo. This package is no longer available for installation or use. Documentation has been updated to reflect this removal and to guide users toward alternative verification approaches.

@coderabbitai
Copy link

coderabbitai bot commented Mar 24, 2026

📝 Walkthrough

Walkthrough

The packages/rust_verifier Rust event verification package is completely removed from the monorepo. All Dart implementation files, Rust bridge bindings, build tooling, platform-specific configurations, and documentation references are deleted. The package is also removed from melos.yaml workspace configuration.

Changes

Cohort / File(s) Summary
Documentation Updates
AI_GUIDE.md, README.md, doc/guides/getting-started.md, doc/library-development/index.md
Removed all references to rust_verifier package, including setup instructions, import examples, and optional package listings.
Build Configuration
melos.yaml
Removed packages/rust_verifier and packages/rust_verifier/rust_builder from monorepo workspace package list.
Dart Implementation
packages/rust_verifier/lib/ndk_rust_verifier.dart, packages/rust_verifier/lib/data_layer/repositories/rust_lib_initializer.dart, packages/rust_verifier/lib/data_layer/repositories/verifiers/rust_event_verifier.dart, packages/rust_verifier/lib/rust_bridge/*
Deleted Rust event verifier class, library initializer, and all generated Flutter Rust Bridge FFI bindings (both platform-specific and web variants).
Rust Implementation
packages/rust_verifier/rust_builder/rust/src/api/event_verifier.rs, packages/rust_verifier/rust_builder/rust/src/lib.rs, packages/rust_verifier/rust_builder/rust/src/frb_generated.rs
Removed Rust event verification functions, module declarations, and generated Flutter Rust Bridge FFI dispatcher code.
Build Tooling & Scripts
packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/*, packages/rust_verifier/rust_builder/cargokit/*.sh, packages/rust_verifier/rust_builder/cargokit/*.cmd, packages/rust_verifier/rust_builder/cargokit/cmake/*, packages/rust_verifier/rust_builder/cargokit/gradle/*
Deleted entire CargoKit build system integration including Dart build orchestration, shell/batch scripts, CMake/Gradle configurations, and artifact management (precompilation, verification, signing).
Platform Build Configurations
packages/rust_verifier/rust_builder/android/*, packages/rust_verifier/rust_builder/ios/*, packages/rust_verifier/rust_builder/linux/*, packages/rust_verifier/rust_builder/macos/*, packages/rust_verifier/rust_builder/windows/*
Removed platform-specific build definitions including Android Gradle/manifest files, iOS/macOS CocoaPods podspecs, CMake configurations for Linux/Windows, and native build glue files.
Rust Crate & Dependencies
packages/rust_verifier/rust_builder/rust/Cargo.toml, packages/rust_verifier/rust_builder/rust/.gitignore
Deleted Rust crate manifest with all cryptographic dependencies (secp256k1, sha2, bip39, flutter_rust_bridge) and build configuration.
Web Assets
packages/rust_verifier/web/pkg/*
Removed WASM WebAssembly bindings and JavaScript glue code for web platform support including package.json metadata and compiled module exports.
Package Metadata & Configuration
packages/rust_verifier/pubspec.yaml, packages/rust_verifier/flutter_rust_bridge.yaml, packages/rust_verifier/codecov.yml, packages/rust_verifier/rust_builder/pubspec.yaml, packages/rust_verifier/rust_builder/cargokit/build_tool/pubspec.yaml
Deleted package manifests, bridge codegen configuration, coverage configuration, and all dependency declarations.
Documentation & License Files
packages/rust_verifier/{CHANGELOG.md,LICENSE,README.md}, packages/rust_verifier/rust_builder/*, packages/rust_verifier/rust_builder/cargokit/*
Removed package changelog, license files, build tool documentation, and cargokit licensing/readme resources.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Poem

🐰 Farewell, swift verifier built in Rust,
Your bridge to Nostr served us with trust,
Now simplified paths lead the way,
As lighter dependencies brighten the day!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title accurately describes the main objective: removing the Rust verifier package and all its associated code, documentation, and build configuration files from the monorepo.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix-remove-rust-verifier

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
doc/guides/getting-started.md (1)

30-40: ⚠️ Potential issue | 🟠 Major

Remove obsolete RustEventVerifier() setup from getting-started example.

Line 30 and Line 39 still instruct users to use RustEventVerifier(), which conflicts with this PR’s rust verifier removal and leaves onboarding docs broken. Please replace this with a currently available verifier/default config path (or omit eventVerifier in the quick-start snippet).

Suggested doc fix
 !!!
-We strongly recommend using `RustEventVerifier()` for client applications. It uses a separate thread for signature verification and is therefore more performant. \
+Use the default verifier configuration unless you explicitly add an optional verifier package supported by this repo. \
 !!!
 
 ```dart
 import 'package:ndk/ndk.dart';
@@
 final ndk = Ndk(
   NdkConfig(
-    eventVerifier: RustEventVerifier(),
     cache: MemCacheManager(),
   ),
 );
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@doc/guides/getting-started.md` around lines 30 - 40, The docs still reference
the removed RustEventVerifier() in the Ndk quick-start; update the
getting-started example to remove the obsolete eventVerifier line (or replace it
with a current verifier) so the snippet using Ndk and NdkConfig compiles;
specifically edit the example that constructs Ndk(NdkConfig(...)) to drop
eventVerifier: RustEventVerifier() and leave cache: MemCacheManager() (or
substitute a supported verifier name) so the sample matches the current API.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Outside diff comments:
In `@doc/guides/getting-started.md`:
- Around line 30-40: The docs still reference the removed RustEventVerifier() in
the Ndk quick-start; update the getting-started example to remove the obsolete
eventVerifier line (or replace it with a current verifier) so the snippet using
Ndk and NdkConfig compiles; specifically edit the example that constructs
Ndk(NdkConfig(...)) to drop eventVerifier: RustEventVerifier() and leave cache:
MemCacheManager() (or substitute a supported verifier name) so the sample
matches the current API.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 8643dc44-df35-41ab-b866-92a3f23849ec

📥 Commits

Reviewing files that changed from the base of the PR and between b9db040 and f5d2897.

⛔ Files ignored due to path filters (4)
  • packages/rust_verifier/pubspec.lock is excluded by !**/*.lock
  • packages/rust_verifier/rust_builder/cargokit/build_tool/pubspec.lock is excluded by !**/*.lock
  • packages/rust_verifier/rust_builder/rust/Cargo.lock is excluded by !**/*.lock
  • packages/rust_verifier/web/pkg/rust_lib_ndk_bg.wasm is excluded by !**/*.wasm
📒 Files selected for processing (73)
  • AI_GUIDE.md
  • README.md
  • doc/guides/getting-started.md
  • doc/library-development/index.md
  • melos.yaml
  • packages/rust_verifier/CHANGELOG.md
  • packages/rust_verifier/LICENSE
  • packages/rust_verifier/README.md
  • packages/rust_verifier/codecov.yml
  • packages/rust_verifier/flutter_rust_bridge.yaml
  • packages/rust_verifier/lib/data_layer/repositories/rust_lib_initializer.dart
  • packages/rust_verifier/lib/data_layer/repositories/verifiers/rust_event_verifier.dart
  • packages/rust_verifier/lib/ndk_rust_verifier.dart
  • packages/rust_verifier/lib/rust_bridge/api/event_verifier.dart
  • packages/rust_verifier/lib/rust_bridge/frb_generated.dart
  • packages/rust_verifier/lib/rust_bridge/frb_generated.io.dart
  • packages/rust_verifier/lib/rust_bridge/frb_generated.web.dart
  • packages/rust_verifier/pubspec.yaml
  • packages/rust_verifier/rust_builder/.gitignore
  • packages/rust_verifier/rust_builder/CHANGELOG.md
  • packages/rust_verifier/rust_builder/LICENSE
  • packages/rust_verifier/rust_builder/README.md
  • packages/rust_verifier/rust_builder/android/.gitignore
  • packages/rust_verifier/rust_builder/android/build.gradle
  • packages/rust_verifier/rust_builder/android/settings.gradle
  • packages/rust_verifier/rust_builder/android/src/main/AndroidManifest.xml
  • packages/rust_verifier/rust_builder/cargokit/.gitignore
  • packages/rust_verifier/rust_builder/cargokit/LICENSE
  • packages/rust_verifier/rust_builder/cargokit/README
  • packages/rust_verifier/rust_builder/cargokit/build_pod.sh
  • packages/rust_verifier/rust_builder/cargokit/build_tool/README.md
  • packages/rust_verifier/rust_builder/cargokit/build_tool/analysis_options.yaml
  • packages/rust_verifier/rust_builder/cargokit/build_tool/bin/build_tool.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/build_tool.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/android_environment.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/artifacts_provider.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/build_cmake.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/build_gradle.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/build_pod.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/build_tool.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/builder.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/cargo.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/crate_hash.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/environment.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/logging.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/options.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/precompile_binaries.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/rustup.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/target.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/util.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/verify_binaries.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/pubspec.yaml
  • packages/rust_verifier/rust_builder/cargokit/cmake/cargokit.cmake
  • packages/rust_verifier/rust_builder/cargokit/cmake/resolve_symlinks.ps1
  • packages/rust_verifier/rust_builder/cargokit/gradle/plugin.gradle
  • packages/rust_verifier/rust_builder/cargokit/run_build_tool.cmd
  • packages/rust_verifier/rust_builder/cargokit/run_build_tool.sh
  • packages/rust_verifier/rust_builder/ios/Classes/dummy_file.c
  • packages/rust_verifier/rust_builder/ios/rust_lib_ndk.podspec
  • packages/rust_verifier/rust_builder/linux/CMakeLists.txt
  • packages/rust_verifier/rust_builder/macos/Classes/dummy_file.c
  • packages/rust_verifier/rust_builder/macos/rust_lib_ndk.podspec
  • packages/rust_verifier/rust_builder/pubspec.yaml
  • packages/rust_verifier/rust_builder/rust/.gitignore
  • packages/rust_verifier/rust_builder/rust/Cargo.toml
  • packages/rust_verifier/rust_builder/rust/src/api/event_verifier.rs
  • packages/rust_verifier/rust_builder/rust/src/api/mod.rs
  • packages/rust_verifier/rust_builder/rust/src/frb_generated.rs
  • packages/rust_verifier/rust_builder/rust/src/lib.rs
  • packages/rust_verifier/rust_builder/windows/.gitignore
  • packages/rust_verifier/rust_builder/windows/CMakeLists.txt
  • packages/rust_verifier/web/pkg/package.json
  • packages/rust_verifier/web/pkg/rust_lib_ndk.js
💤 Files with no reviewable changes (71)
  • packages/rust_verifier/LICENSE
  • README.md
  • AI_GUIDE.md
  • packages/rust_verifier/rust_builder/rust/.gitignore
  • packages/rust_verifier/rust_builder/rust/src/api/mod.rs
  • packages/rust_verifier/flutter_rust_bridge.yaml
  • packages/rust_verifier/rust_builder/ios/Classes/dummy_file.c
  • packages/rust_verifier/rust_builder/macos/Classes/dummy_file.c
  • packages/rust_verifier/rust_builder/cargokit/build_tool/README.md
  • packages/rust_verifier/rust_builder/LICENSE
  • melos.yaml
  • packages/rust_verifier/rust_builder/README.md
  • packages/rust_verifier/rust_builder/cargokit/build_tool/analysis_options.yaml
  • packages/rust_verifier/rust_builder/cargokit/.gitignore
  • packages/rust_verifier/rust_builder/cargokit/build_tool/pubspec.yaml
  • packages/rust_verifier/codecov.yml
  • packages/rust_verifier/rust_builder/cargokit/build_tool/bin/build_tool.dart
  • packages/rust_verifier/rust_builder/android/src/main/AndroidManifest.xml
  • packages/rust_verifier/rust_builder/windows/.gitignore
  • packages/rust_verifier/CHANGELOG.md
  • packages/rust_verifier/rust_builder/android/.gitignore
  • packages/rust_verifier/rust_builder/.gitignore
  • packages/rust_verifier/lib/data_layer/repositories/rust_lib_initializer.dart
  • packages/rust_verifier/rust_builder/cargokit/LICENSE
  • packages/rust_verifier/rust_builder/cargokit/README
  • packages/rust_verifier/rust_builder/macos/rust_lib_ndk.podspec
  • packages/rust_verifier/rust_builder/linux/CMakeLists.txt
  • packages/rust_verifier/web/pkg/package.json
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/build_cmake.dart
  • packages/rust_verifier/rust_builder/pubspec.yaml
  • packages/rust_verifier/rust_builder/cargokit/build_pod.sh
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/logging.dart
  • packages/rust_verifier/README.md
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/environment.dart
  • packages/rust_verifier/rust_builder/cargokit/cmake/cargokit.cmake
  • packages/rust_verifier/rust_builder/rust/src/lib.rs
  • packages/rust_verifier/rust_builder/cargokit/run_build_tool.cmd
  • packages/rust_verifier/pubspec.yaml
  • packages/rust_verifier/lib/data_layer/repositories/verifiers/rust_event_verifier.dart
  • packages/rust_verifier/rust_builder/windows/CMakeLists.txt
  • packages/rust_verifier/lib/rust_bridge/frb_generated.web.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/build_gradle.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/verify_binaries.dart
  • packages/rust_verifier/rust_builder/cargokit/run_build_tool.sh
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/cargo.dart
  • packages/rust_verifier/rust_builder/cargokit/cmake/resolve_symlinks.ps1
  • packages/rust_verifier/rust_builder/rust/Cargo.toml
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/crate_hash.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/rustup.dart
  • packages/rust_verifier/rust_builder/rust/src/frb_generated.rs
  • packages/rust_verifier/lib/rust_bridge/api/event_verifier.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/target.dart
  • packages/rust_verifier/rust_builder/android/settings.gradle
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/build_tool.dart
  • packages/rust_verifier/rust_builder/android/build.gradle
  • packages/rust_verifier/rust_builder/rust/src/api/event_verifier.rs
  • packages/rust_verifier/rust_builder/cargokit/gradle/plugin.gradle
  • packages/rust_verifier/rust_builder/CHANGELOG.md
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/android_environment.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/build_tool.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/artifacts_provider.dart
  • packages/rust_verifier/rust_builder/ios/rust_lib_ndk.podspec
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/builder.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/build_pod.dart
  • packages/rust_verifier/lib/rust_bridge/frb_generated.io.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/util.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/options.dart
  • packages/rust_verifier/rust_builder/cargokit/build_tool/lib/src/precompile_binaries.dart
  • packages/rust_verifier/lib/ndk_rust_verifier.dart
  • packages/rust_verifier/lib/rust_bridge/frb_generated.dart
  • packages/rust_verifier/web/pkg/rust_lib_ndk.js

@frnandu frnandu requested review from 1-leo and nogringo March 24, 2026 15:26

## Getting started with NDK helper packages

### Prerequisites `ndk_rust_verifier`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to keep this part of the docs. Installing rust+tool chains is necessary

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants