chore: migrate lint settings from cargo config to cargo TOML (#1337)

This commit is contained in:
Antonio 2025-06-17 15:05:28 +02:00 committed by GitHub
parent 43b6ab3dd1
commit dff875ad7a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
55 changed files with 1451 additions and 224 deletions

View File

@ -1,166 +1,7 @@
# DO NOT RE-ORDER LINES IN THIS FILE, AS ORDER MATTERS!
[target.'cfg(target_os = "macos")']
# when using osx, we need to link against some golang libraries, it did just work with this missing flags
# from: https://github.com/golang/go/issues/42459
rustflags = [
"-C",
"link-args=-framework CoreFoundation -framework Security -framework CoreServices -lresolv",
]
[target.'cfg(all())']
rustflags = [
# Nursery and allowed nursery warnings (new lints will warn by default)
"-Wclippy::nursery",
# Pedantic and allowed pedantic warnings (new lints will warn by default)
"-Wclippy::pedantic",
"-Aclippy::similar_names",
# Restriction and allowed restriction warnings (new lints will warn by default)
"-Aclippy::blanket_clippy_restriction_lints",
"-Wclippy::restriction",
"-Aclippy::absolute_paths",
"-Aclippy::alloc_instead_of_core",
"-Aclippy::arbitrary_source_item_ordering",
"-Aclippy::big_endian_bytes",
"-Aclippy::decimal_literal_representation",
"-Aclippy::default_numeric_fallback",
"-Aclippy::deref_by_slicing",
"-Aclippy::else_if_without_else",
"-Aclippy::exhaustive_enums",
"-Aclippy::exhaustive_structs",
"-Aclippy::exit",
"-Aclippy::expect_used",
"-Aclippy::field_scoped_visibility_modifiers",
"-Aclippy::float_arithmetic",
"-Aclippy::get_unwrap",
"-Aclippy::host_endian_bytes",
"-Aclippy::implicit_return",
"-Aclippy::integer_division_remainder_used",
"-Aclippy::iter_over_hash_type",
"-Aclippy::let_underscore_must_use",
"-Aclippy::let_underscore_untyped",
"-Aclippy::little_endian_bytes",
"-Aclippy::map_err_ignore",
"-Aclippy::min_ident_chars",
"-Aclippy::missing_asserts_for_indexing",
"-Aclippy::missing_docs_in_private_items",
"-Aclippy::missing_inline_in_public_items",
"-Aclippy::missing_trait_methods",
"-Aclippy::mixed_read_write_in_expression",
"-Aclippy::mod_module_files",
"-Aclippy::module_name_repetitions",
"-Aclippy::modulo_arithmetic",
"-Aclippy::panic",
"-Aclippy::panic_in_result_fn",
"-Aclippy::partial_pub_fields",
"-Aclippy::print_stderr",
"-Aclippy::print_stdout",
"-Aclippy::pub_use",
"-Aclippy::pub_with_shorthand",
"-Aclippy::question_mark_used",
"-Aclippy::self_named_module_files",
"-Aclippy::semicolon_inside_block",
"-Aclippy::single_call_fn",
"-Aclippy::single_char_lifetime_names",
"-Aclippy::std_instead_of_alloc",
"-Aclippy::std_instead_of_core",
"-Aclippy::struct_field_names",
"-Aclippy::unseparated_literal_suffix",
"-Aclippy::use_debug",
"-Aclippy::wildcard_enum_match_arm",
# TODO: Address these Clippy lints at some point (by deleting the entry, which turns them into warnings).
"-Aclippy::arithmetic_side_effects",
"-Aclippy::as_conversions",
"-Aclippy::as_pointer_underscore",
"-Aclippy::as_underscore",
"-Aclippy::assertions_on_result_states",
"-Aclippy::cast_possible_truncation",
"-Aclippy::cast_possible_wrap",
"-Aclippy::cast_precision_loss",
"-Aclippy::cast_sign_loss",
"-Aclippy::cfg_not_test",
"-Aclippy::dbg_macro",
"-Aclippy::error_impl_error",
"-Aclippy::impl_trait_in_params",
"-Aclippy::indexing_slicing",
"-Aclippy::infinite_loop",
"-Aclippy::integer_division",
"-Aclippy::large_stack_frames",
"-Aclippy::missing_assert_message",
"-Aclippy::missing_errors_doc",
"-Aclippy::missing_panics_doc",
"-Aclippy::pattern_type_mismatch",
"-Aclippy::ref_patterns",
"-Aclippy::renamed_function_params",
"-Aclippy::same_name_method",
"-Aclippy::shadow_reuse",
"-Aclippy::shadow_same",
"-Aclippy::shadow_unrelated",
"-Aclippy::tests_outside_test_module",
"-Aclippy::todo",
"-Aclippy::unimplemented",
"-Aclippy::unreachable",
"-Aclippy::unwrap_in_result",
"-Aclippy::unwrap_used",
# Explicitly allowed Rustc lints
# Rustc lints which are allow-by-default but have been changed to "warn"
"-Wredundant_imports",
"-Wredundant_lifetimes",
# TODO: Address these allow-by-default Rustc lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
"-Aabsolute_paths_not_starting_with_crate",
"-Aambiguous_negative_literals",
"-Aclosure_returning_async_block",
"-Adeprecated_safe_2024",
"-Aderef_into_dyn_supertrait",
"-Aedition_2024_expr_fragment_specifier",
"-Aelided_lifetimes_in_paths",
"-Aexplicit_outlives_requirements",
"-Affi_unwind_calls",
"-Aif_let_rescope",
"-Aimpl_trait_overcaptures",
"-Aimpl_trait_redundant_captures",
"-Akeyword-idents",
"-Akeyword_idents_2018",
"-Akeyword_idents_2024",
"-Alet_underscore_drop",
"-Alinker_messages",
"-Amacro_use_extern_crate",
"-Ameta_variable_misuse",
"-Amissing_copy_implementations",
"-Amissing_debug_implementations",
"-Amissing_docs",
"-Amissing_unsafe_on_extern",
"-Anon_ascii_idents",
"-Arust_2021_incompatible_closure_captures",
"-Arust_2021_incompatible_or_patterns",
"-Arust_2021_prefixes_incompatible_syntax",
"-Arust_2021_prelude_collisions",
"-Arust_2024_guarded_string_incompatible_syntax",
"-Arust_2024_incompatible_pat",
"-Arust_2024_prelude_collisions",
"-Asingle_use_lifetimes",
"-Atail_expr_drop_order",
"-Atrivial_casts",
"-Atrivial_numeric_casts",
"-Aunit_bindings",
"-Aunnameable_types",
"-Aunreachable_pub",
"-Aunsafe_attr_outside_unsafe",
"-Aunsafe_code",
"-Aunsafe_op_in_unsafe_fn",
"-Aunstable_features",
"-Aunused_crate_dependencies",
"-Aunused_extern_crates",
"-Aunused_import_braces",
"-Aunused_lifetimes",
"-Aunused_macro_rules",
"-Aunused_qualifications",
"-Aunused_results",
"-Avariant_size_differences"
]

View File

@ -1,5 +1,5 @@
[workspace]
# Make sure any excluded crates are still clipped in our CI.
# Make sure any excluded crates are still clipped in our CI. Also, make sure they use the same Clippy and rustc lints we specify in this file down below.
exclude = ["nomos-core/cl", "nomos-core/proof_statements", "nomos-core/risc0_proofs"]
members = [
"consensus/cryptarchia-engine",
@ -110,5 +110,167 @@ risc0-zkvm = "2.0.0"
serde_with = "3.12.0"
tracing = "0.1"
[workspace.lints.clippy]
# Nursery and allowed nursery warnings (new lints will warn by default)
nursery = { level = "warn", priority = -1 }
# Pedantic and allowed pedantic warnings (new lints will warn by default)
pedantic = { level = "warn", priority = -1 }
similar_names = { level = "allow" }
# Restriction and allowed restriction warnings (new lints will warn by default)
restriction = { level = "warn", priority = -1 }
absolute_paths = { level = "allow" }
alloc_instead_of_core = { level = "allow" }
arbitrary_source_item_ordering = { level = "allow" }
big_endian_bytes = { level = "allow" }
blanket_clippy_restriction_lints = { level = "allow" }
decimal_literal_representation = { level = "allow" }
default_numeric_fallback = { level = "allow" }
deref_by_slicing = { level = "allow" }
else_if_without_else = { level = "allow" }
exhaustive_enums = { level = "allow" }
exhaustive_structs = { level = "allow" }
exit = { level = "allow" }
expect_used = { level = "allow" }
field_scoped_visibility_modifiers = { level = "allow" }
float_arithmetic = { level = "allow" }
get_unwrap = { level = "allow" }
host_endian_bytes = { level = "allow" }
implicit_return = { level = "allow" }
integer_division_remainder_used = { level = "allow" }
iter_over_hash_type = { level = "allow" }
let_underscore_must_use = { level = "allow" }
let_underscore_untyped = { level = "allow" }
little_endian_bytes = { level = "allow" }
map_err_ignore = { level = "allow" }
min_ident_chars = { level = "allow" }
missing_asserts_for_indexing = { level = "allow" }
missing_docs_in_private_items = { level = "allow" }
missing_inline_in_public_items = { level = "allow" }
missing_trait_methods = { level = "allow" }
mixed_read_write_in_expression = { level = "allow" }
mod_module_files = { level = "allow" }
module_name_repetitions = { level = "allow" }
modulo_arithmetic = { level = "allow" }
panic = { level = "allow" }
panic_in_result_fn = { level = "allow" }
partial_pub_fields = { level = "allow" }
print_stderr = { level = "allow" }
print_stdout = { level = "allow" }
pub_use = { level = "allow" }
pub_with_shorthand = { level = "allow" }
question_mark_used = { level = "allow" }
self_named_module_files = { level = "allow" }
semicolon_inside_block = { level = "allow" }
single_call_fn = { level = "allow" }
single_char_lifetime_names = { level = "allow" }
std_instead_of_alloc = { level = "allow" }
std_instead_of_core = { level = "allow" }
struct_field_names = { level = "allow" }
unseparated_literal_suffix = { level = "allow" }
use_debug = { level = "allow" }
wildcard_enum_match_arm = { level = "allow" }
# TODO: Address these allow-by-default lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
# When doing so, please update the same table for all crates that are not part of the workspace.
arithmetic_side_effects = { level = "allow" }
as_conversions = { level = "allow" }
as_pointer_underscore = { level = "allow" }
as_underscore = { level = "allow" }
assertions_on_result_states = { level = "allow" }
cast_possible_truncation = { level = "allow" }
cast_possible_wrap = { level = "allow" }
cast_precision_loss = { level = "allow" }
cast_sign_loss = { level = "allow" }
cfg_not_test = { level = "allow" }
dbg_macro = { level = "allow" }
error_impl_error = { level = "allow" }
impl_trait_in_params = { level = "allow" }
indexing_slicing = { level = "allow" }
infinite_loop = { level = "allow" }
integer_division = { level = "allow" }
large_stack_frames = { level = "allow" }
missing_assert_message = { level = "allow" }
missing_errors_doc = { level = "allow" }
missing_panics_doc = { level = "allow" }
pattern_type_mismatch = { level = "allow" }
ref_patterns = { level = "allow" }
renamed_function_params = { level = "allow" }
same_name_method = { level = "allow" }
shadow_reuse = { level = "allow" }
shadow_same = { level = "allow" }
shadow_unrelated = { level = "allow" }
tests_outside_test_module = { level = "allow" }
todo = { level = "allow" }
unimplemented = { level = "allow" }
unreachable = { level = "allow" }
unwrap_in_result = { level = "allow" }
unwrap_used = { level = "allow" }
[workspace.lints.rust]
# Explicitly allowed lints
# Lints which are allow-by-default but have been changed to "warn"
redundant_imports = { level = "warn" }
redundant_lifetimes = { level = "warn" }
# TODO: Address these allow-by-default Rustc lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
# When doing so, please update the same table for all crates that are not part of the workspace.
absolute_paths_not_starting_with_crate = { level = "allow" }
ambiguous_negative_literals = { level = "allow" }
closure_returning_async_block = { level = "allow" }
deprecated_safe_2024 = { level = "allow" }
deref_into_dyn_supertrait = { level = "allow" }
edition_2024_expr_fragment_specifier = { level = "allow" }
elided_lifetimes_in_paths = { level = "allow" }
explicit_outlives_requirements = { level = "allow" }
ffi_unwind_calls = { level = "allow" }
if_let_rescope = { level = "allow" }
impl_trait_overcaptures = { level = "allow" }
impl_trait_redundant_captures = { level = "allow" }
keyword-idents = { level = "allow" }
keyword_idents_2018 = { level = "allow" }
keyword_idents_2024 = { level = "allow" }
let_underscore_drop = { level = "allow" }
linker_messages = { level = "allow" }
macro_use_extern_crate = { level = "allow" }
meta_variable_misuse = { level = "allow" }
missing_copy_implementations = { level = "allow" }
missing_debug_implementations = { level = "allow" }
missing_docs = { level = "allow" }
missing_unsafe_on_extern = { level = "allow" }
non_ascii_idents = { level = "allow" }
rust_2021_incompatible_closure_captures = { level = "allow" }
rust_2021_incompatible_or_patterns = { level = "allow" }
rust_2021_prefixes_incompatible_syntax = { level = "allow" }
rust_2021_prelude_collisions = { level = "allow" }
rust_2024_guarded_string_incompatible_syntax = { level = "allow" }
rust_2024_incompatible_pat = { level = "allow" }
rust_2024_prelude_collisions = { level = "allow" }
single_use_lifetimes = { level = "allow" }
tail_expr_drop_order = { level = "allow" }
trivial_casts = { level = "allow" }
trivial_numeric_casts = { level = "allow" }
unit_bindings = { level = "allow" }
unnameable_types = { level = "allow" }
unreachable_pub = { level = "allow" }
unsafe_attr_outside_unsafe = { level = "allow" }
unsafe_code = { level = "allow" }
unsafe_op_in_unsafe_fn = { level = "allow" }
unstable_features = { level = "allow" }
unused_crate_dependencies = { level = "allow" }
unused_extern_crates = { level = "allow" }
unused_import_braces = { level = "allow" }
unused_lifetimes = { level = "allow" }
unused_macro_rules = { level = "allow" }
unused_qualifications = { level = "allow" }
unused_results = { level = "allow" }
variant_size_differences = { level = "allow" }
[workspace.package]
license = "MIT or Apache-2.0"

View File

@ -4,7 +4,12 @@ license = { workspace = true }
name = "cryptarchia-engine"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[package.metadata.cargo-machete]
# False positives.
ignored = ["nomos-utils"]
[lints]
workspace = true
[dependencies]
cfg_eval = { version = "0.1", optional = true }
@ -19,7 +24,3 @@ tracing = { workspace = true }
[features]
serde = ["dep:cfg_eval", "dep:nomos-utils", "dep:serde", "dep:serde_with"]
tokio = ["dep:tokio"]
[package.metadata.cargo-machete]
# False positives.
ignored = ["nomos-utils"]

View File

@ -4,7 +4,8 @@ license = { workspace = true }
name = "nomos-ledger"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
blake2 = "0.10"

View File

@ -4,5 +4,8 @@ license = { workspace = true }
name = "nomos-http-api-common"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
serde = { version = "1.0", features = ["derive"] }

View File

@ -4,6 +4,20 @@ license = { workspace = true }
name = "nomos-executor"
version = "0.1.0"
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by Overwatch's `#[derive_services]` macro.
"tracing",
# Required by Overwatch's `#[derive_services]` macro.
"tokio",
# Required by `wait_until_services_are_ready` macro.
"futures",
]
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
axum = { version = "0.6" }
@ -44,14 +58,3 @@ utoipa-swagger-ui = { version = "4.0" }
default = ["tracing"]
instrumentation = ["nomos-node/instrumentation"]
tracing = ["nomos-node/tracing"]
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by Overwatch's `#[derive_services]` macro.
"tracing",
# Required by Overwatch's `#[derive_services]` macro.
"tokio",
# Required by `wait_until_services_are_ready` macro.
"futures",
]

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "executor-http-client"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
common-http-client = { workspace = true }
futures = "0.3.31"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "common-http-client"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
futures = "0.3.31"
nomos-core = { workspace = true }

View File

@ -4,7 +4,17 @@ license = { workspace = true }
name = "nomos-node"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by Overwatch's `#[derive_services]` macro.
"tokio",
# Required by `wait_until_services_are_ready` macro.
"futures",
]
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
@ -59,12 +69,3 @@ tower-http = { version = "0.4", features = ["cors", "trace"] }
default = ["tracing"]
instrumentation = []
tracing = []
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by Overwatch's `#[derive_services]` macro.
"tokio",
# Required by `wait_until_services_are_ready` macro.
"futures",
]

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-blend"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
fixed = { version = "1", features = ["serde-str"] }
futures = "0.3"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-blend-message"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
itertools = "0.13"
rand_chacha = "0.3"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-blend-network"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
cached = { workspace = true }
futures = "0.3.30"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "bundler"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
clap = { version = "4.5.27", features = ["derive"] }
env_logger = "0.11.6"

View File

@ -6,7 +6,8 @@ license = { workspace = true }
name = "nomos-cli"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
clap = { version = "4", features = ["derive"] }

View File

@ -5,7 +5,8 @@ license = { workspace = true }
name = "nomos-core"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
anyhow = "1.0"

View File

@ -12,3 +12,163 @@ rand = "0.8.5"
rand_core = "0.6.0"
serde = { version = "1.0", features = ["derive"] }
sha2 = "0.10"
[lints.clippy]
# Nursery and allowed nursery warnings (new lints will warn by default)
nursery = { level = "warn", priority = -1 }
# Pedantic and allowed pedantic warnings (new lints will warn by default)
pedantic = { level = "warn", priority = -1 }
similar_names = { level = "allow" }
# Restriction and allowed restriction warnings (new lints will warn by default)
restriction = { level = "warn", priority = -1 }
absolute_paths = { level = "allow" }
alloc_instead_of_core = { level = "allow" }
arbitrary_source_item_ordering = { level = "allow" }
big_endian_bytes = { level = "allow" }
blanket_clippy_restriction_lints = { level = "allow" }
decimal_literal_representation = { level = "allow" }
default_numeric_fallback = { level = "allow" }
deref_by_slicing = { level = "allow" }
else_if_without_else = { level = "allow" }
exhaustive_enums = { level = "allow" }
exhaustive_structs = { level = "allow" }
exit = { level = "allow" }
expect_used = { level = "allow" }
field_scoped_visibility_modifiers = { level = "allow" }
float_arithmetic = { level = "allow" }
get_unwrap = { level = "allow" }
host_endian_bytes = { level = "allow" }
implicit_return = { level = "allow" }
integer_division_remainder_used = { level = "allow" }
iter_over_hash_type = { level = "allow" }
let_underscore_must_use = { level = "allow" }
let_underscore_untyped = { level = "allow" }
little_endian_bytes = { level = "allow" }
map_err_ignore = { level = "allow" }
min_ident_chars = { level = "allow" }
missing_asserts_for_indexing = { level = "allow" }
missing_docs_in_private_items = { level = "allow" }
missing_inline_in_public_items = { level = "allow" }
missing_trait_methods = { level = "allow" }
mixed_read_write_in_expression = { level = "allow" }
mod_module_files = { level = "allow" }
module_name_repetitions = { level = "allow" }
modulo_arithmetic = { level = "allow" }
panic = { level = "allow" }
panic_in_result_fn = { level = "allow" }
partial_pub_fields = { level = "allow" }
print_stderr = { level = "allow" }
print_stdout = { level = "allow" }
pub_use = { level = "allow" }
pub_with_shorthand = { level = "allow" }
question_mark_used = { level = "allow" }
self_named_module_files = { level = "allow" }
semicolon_inside_block = { level = "allow" }
single_call_fn = { level = "allow" }
single_char_lifetime_names = { level = "allow" }
std_instead_of_alloc = { level = "allow" }
std_instead_of_core = { level = "allow" }
struct_field_names = { level = "allow" }
unseparated_literal_suffix = { level = "allow" }
use_debug = { level = "allow" }
wildcard_enum_match_arm = { level = "allow" }
# TODO: Address these allow-by-default lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
arithmetic_side_effects = { level = "allow" }
as_conversions = { level = "allow" }
as_pointer_underscore = { level = "allow" }
as_underscore = { level = "allow" }
assertions_on_result_states = { level = "allow" }
cast_possible_truncation = { level = "allow" }
cast_possible_wrap = { level = "allow" }
cast_precision_loss = { level = "allow" }
cast_sign_loss = { level = "allow" }
cfg_not_test = { level = "allow" }
dbg_macro = { level = "allow" }
error_impl_error = { level = "allow" }
impl_trait_in_params = { level = "allow" }
indexing_slicing = { level = "allow" }
infinite_loop = { level = "allow" }
integer_division = { level = "allow" }
large_stack_frames = { level = "allow" }
missing_assert_message = { level = "allow" }
missing_errors_doc = { level = "allow" }
missing_panics_doc = { level = "allow" }
pattern_type_mismatch = { level = "allow" }
ref_patterns = { level = "allow" }
renamed_function_params = { level = "allow" }
same_name_method = { level = "allow" }
shadow_reuse = { level = "allow" }
shadow_same = { level = "allow" }
shadow_unrelated = { level = "allow" }
tests_outside_test_module = { level = "allow" }
todo = { level = "allow" }
unimplemented = { level = "allow" }
unreachable = { level = "allow" }
unwrap_in_result = { level = "allow" }
unwrap_used = { level = "allow" }
[lints.rust]
# Explicitly allowed lints
# Lints which are allow-by-default but have been changed to "warn"
redundant_imports = { level = "warn" }
redundant_lifetimes = { level = "warn" }
# TODO: Address these allow-by-default Rustc lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
absolute_paths_not_starting_with_crate = { level = "allow" }
ambiguous_negative_literals = { level = "allow" }
closure_returning_async_block = { level = "allow" }
deprecated_safe_2024 = { level = "allow" }
deref_into_dyn_supertrait = { level = "allow" }
edition_2024_expr_fragment_specifier = { level = "allow" }
elided_lifetimes_in_paths = { level = "allow" }
explicit_outlives_requirements = { level = "allow" }
ffi_unwind_calls = { level = "allow" }
if_let_rescope = { level = "allow" }
impl_trait_overcaptures = { level = "allow" }
impl_trait_redundant_captures = { level = "allow" }
keyword-idents = { level = "allow" }
keyword_idents_2018 = { level = "allow" }
keyword_idents_2024 = { level = "allow" }
let_underscore_drop = { level = "allow" }
linker_messages = { level = "allow" }
macro_use_extern_crate = { level = "allow" }
meta_variable_misuse = { level = "allow" }
missing_copy_implementations = { level = "allow" }
missing_debug_implementations = { level = "allow" }
missing_docs = { level = "allow" }
missing_unsafe_on_extern = { level = "allow" }
non_ascii_idents = { level = "allow" }
rust_2021_incompatible_closure_captures = { level = "allow" }
rust_2021_incompatible_or_patterns = { level = "allow" }
rust_2021_prefixes_incompatible_syntax = { level = "allow" }
rust_2021_prelude_collisions = { level = "allow" }
rust_2024_guarded_string_incompatible_syntax = { level = "allow" }
rust_2024_incompatible_pat = { level = "allow" }
rust_2024_prelude_collisions = { level = "allow" }
single_use_lifetimes = { level = "allow" }
tail_expr_drop_order = { level = "allow" }
trivial_casts = { level = "allow" }
trivial_numeric_casts = { level = "allow" }
unit_bindings = { level = "allow" }
unnameable_types = { level = "allow" }
unreachable_pub = { level = "allow" }
unsafe_attr_outside_unsafe = { level = "allow" }
unsafe_code = { level = "allow" }
unsafe_op_in_unsafe_fn = { level = "allow" }
unstable_features = { level = "allow" }
unused_crate_dependencies = { level = "allow" }
unused_extern_crates = { level = "allow" }
unused_import_braces = { level = "allow" }
unused_lifetimes = { level = "allow" }
unused_macro_rules = { level = "allow" }
unused_qualifications = { level = "allow" }
unused_results = { level = "allow" }
variant_size_differences = { level = "allow" }

View File

@ -68,7 +68,6 @@ mod test {
note::{derive_unit, NoteWitness},
nullifier::NullifierSecret,
output::OutputWitness,
partial_tx::PartialTxWitness,
};
#[test]

View File

@ -139,7 +139,6 @@ impl Nonce {
#[cfg(test)]
mod test {
use super::*;
use crate::nullifier::NullifierSecret;
#[test]
fn test_note_commit_permutations() {

View File

@ -9,3 +9,163 @@ cl = { path = "../cl" }
crypto-bigint = { version = "0.5.5", features = ["serde"] }
serde = { version = "1.0", features = ["derive"] }
sha2 = "0.10"
[lints.clippy]
# Nursery and allowed nursery warnings (new lints will warn by default)
nursery = { level = "warn", priority = -1 }
# Pedantic and allowed pedantic warnings (new lints will warn by default)
pedantic = { level = "warn", priority = -1 }
similar_names = { level = "allow" }
# Restriction and allowed restriction warnings (new lints will warn by default)
restriction = { level = "warn", priority = -1 }
absolute_paths = { level = "allow" }
alloc_instead_of_core = { level = "allow" }
arbitrary_source_item_ordering = { level = "allow" }
big_endian_bytes = { level = "allow" }
blanket_clippy_restriction_lints = { level = "allow" }
decimal_literal_representation = { level = "allow" }
default_numeric_fallback = { level = "allow" }
deref_by_slicing = { level = "allow" }
else_if_without_else = { level = "allow" }
exhaustive_enums = { level = "allow" }
exhaustive_structs = { level = "allow" }
exit = { level = "allow" }
expect_used = { level = "allow" }
field_scoped_visibility_modifiers = { level = "allow" }
float_arithmetic = { level = "allow" }
get_unwrap = { level = "allow" }
host_endian_bytes = { level = "allow" }
implicit_return = { level = "allow" }
integer_division_remainder_used = { level = "allow" }
iter_over_hash_type = { level = "allow" }
let_underscore_must_use = { level = "allow" }
let_underscore_untyped = { level = "allow" }
little_endian_bytes = { level = "allow" }
map_err_ignore = { level = "allow" }
min_ident_chars = { level = "allow" }
missing_asserts_for_indexing = { level = "allow" }
missing_docs_in_private_items = { level = "allow" }
missing_inline_in_public_items = { level = "allow" }
missing_trait_methods = { level = "allow" }
mixed_read_write_in_expression = { level = "allow" }
mod_module_files = { level = "allow" }
module_name_repetitions = { level = "allow" }
modulo_arithmetic = { level = "allow" }
panic = { level = "allow" }
panic_in_result_fn = { level = "allow" }
partial_pub_fields = { level = "allow" }
print_stderr = { level = "allow" }
print_stdout = { level = "allow" }
pub_use = { level = "allow" }
pub_with_shorthand = { level = "allow" }
question_mark_used = { level = "allow" }
self_named_module_files = { level = "allow" }
semicolon_inside_block = { level = "allow" }
single_call_fn = { level = "allow" }
single_char_lifetime_names = { level = "allow" }
std_instead_of_alloc = { level = "allow" }
std_instead_of_core = { level = "allow" }
struct_field_names = { level = "allow" }
unseparated_literal_suffix = { level = "allow" }
use_debug = { level = "allow" }
wildcard_enum_match_arm = { level = "allow" }
# TODO: Address these allow-by-default lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
arithmetic_side_effects = { level = "allow" }
as_conversions = { level = "allow" }
as_pointer_underscore = { level = "allow" }
as_underscore = { level = "allow" }
assertions_on_result_states = { level = "allow" }
cast_possible_truncation = { level = "allow" }
cast_possible_wrap = { level = "allow" }
cast_precision_loss = { level = "allow" }
cast_sign_loss = { level = "allow" }
cfg_not_test = { level = "allow" }
dbg_macro = { level = "allow" }
error_impl_error = { level = "allow" }
impl_trait_in_params = { level = "allow" }
indexing_slicing = { level = "allow" }
infinite_loop = { level = "allow" }
integer_division = { level = "allow" }
large_stack_frames = { level = "allow" }
missing_assert_message = { level = "allow" }
missing_errors_doc = { level = "allow" }
missing_panics_doc = { level = "allow" }
pattern_type_mismatch = { level = "allow" }
ref_patterns = { level = "allow" }
renamed_function_params = { level = "allow" }
same_name_method = { level = "allow" }
shadow_reuse = { level = "allow" }
shadow_same = { level = "allow" }
shadow_unrelated = { level = "allow" }
tests_outside_test_module = { level = "allow" }
todo = { level = "allow" }
unimplemented = { level = "allow" }
unreachable = { level = "allow" }
unwrap_in_result = { level = "allow" }
unwrap_used = { level = "allow" }
[lints.rust]
# Explicitly allowed lints
# Lints which are allow-by-default but have been changed to "warn"
redundant_imports = { level = "warn" }
redundant_lifetimes = { level = "warn" }
# TODO: Address these allow-by-default Rustc lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
absolute_paths_not_starting_with_crate = { level = "allow" }
ambiguous_negative_literals = { level = "allow" }
closure_returning_async_block = { level = "allow" }
deprecated_safe_2024 = { level = "allow" }
deref_into_dyn_supertrait = { level = "allow" }
edition_2024_expr_fragment_specifier = { level = "allow" }
elided_lifetimes_in_paths = { level = "allow" }
explicit_outlives_requirements = { level = "allow" }
ffi_unwind_calls = { level = "allow" }
if_let_rescope = { level = "allow" }
impl_trait_overcaptures = { level = "allow" }
impl_trait_redundant_captures = { level = "allow" }
keyword-idents = { level = "allow" }
keyword_idents_2018 = { level = "allow" }
keyword_idents_2024 = { level = "allow" }
let_underscore_drop = { level = "allow" }
linker_messages = { level = "allow" }
macro_use_extern_crate = { level = "allow" }
meta_variable_misuse = { level = "allow" }
missing_copy_implementations = { level = "allow" }
missing_debug_implementations = { level = "allow" }
missing_docs = { level = "allow" }
missing_unsafe_on_extern = { level = "allow" }
non_ascii_idents = { level = "allow" }
rust_2021_incompatible_closure_captures = { level = "allow" }
rust_2021_incompatible_or_patterns = { level = "allow" }
rust_2021_prefixes_incompatible_syntax = { level = "allow" }
rust_2021_prelude_collisions = { level = "allow" }
rust_2024_guarded_string_incompatible_syntax = { level = "allow" }
rust_2024_incompatible_pat = { level = "allow" }
rust_2024_prelude_collisions = { level = "allow" }
single_use_lifetimes = { level = "allow" }
tail_expr_drop_order = { level = "allow" }
trivial_casts = { level = "allow" }
trivial_numeric_casts = { level = "allow" }
unit_bindings = { level = "allow" }
unnameable_types = { level = "allow" }
unreachable_pub = { level = "allow" }
unsafe_attr_outside_unsafe = { level = "allow" }
unsafe_code = { level = "allow" }
unsafe_op_in_unsafe_fn = { level = "allow" }
unstable_features = { level = "allow" }
unused_crate_dependencies = { level = "allow" }
unused_extern_crates = { level = "allow" }
unused_import_braces = { level = "allow" }
unused_lifetimes = { level = "allow" }
unused_macro_rules = { level = "allow" }
unused_qualifications = { level = "allow" }
unused_results = { level = "allow" }
variant_size_differences = { level = "allow" }

View File

@ -16,3 +16,163 @@ ignored = [
# cargo-machete does not yet handle build-time dependencies -> https://github.com/bnjbvr/cargo-machete/issues/100
"risc0-build",
]
[lints.clippy]
# Nursery and allowed nursery warnings (new lints will warn by default)
nursery = { level = "warn", priority = -1 }
# Pedantic and allowed pedantic warnings (new lints will warn by default)
pedantic = { level = "warn", priority = -1 }
similar_names = { level = "allow" }
# Restriction and allowed restriction warnings (new lints will warn by default)
restriction = { level = "warn", priority = -1 }
absolute_paths = { level = "allow" }
alloc_instead_of_core = { level = "allow" }
arbitrary_source_item_ordering = { level = "allow" }
big_endian_bytes = { level = "allow" }
blanket_clippy_restriction_lints = { level = "allow" }
decimal_literal_representation = { level = "allow" }
default_numeric_fallback = { level = "allow" }
deref_by_slicing = { level = "allow" }
else_if_without_else = { level = "allow" }
exhaustive_enums = { level = "allow" }
exhaustive_structs = { level = "allow" }
exit = { level = "allow" }
expect_used = { level = "allow" }
field_scoped_visibility_modifiers = { level = "allow" }
float_arithmetic = { level = "allow" }
get_unwrap = { level = "allow" }
host_endian_bytes = { level = "allow" }
implicit_return = { level = "allow" }
integer_division_remainder_used = { level = "allow" }
iter_over_hash_type = { level = "allow" }
let_underscore_must_use = { level = "allow" }
let_underscore_untyped = { level = "allow" }
little_endian_bytes = { level = "allow" }
map_err_ignore = { level = "allow" }
min_ident_chars = { level = "allow" }
missing_asserts_for_indexing = { level = "allow" }
missing_docs_in_private_items = { level = "allow" }
missing_inline_in_public_items = { level = "allow" }
missing_trait_methods = { level = "allow" }
mixed_read_write_in_expression = { level = "allow" }
mod_module_files = { level = "allow" }
module_name_repetitions = { level = "allow" }
modulo_arithmetic = { level = "allow" }
panic = { level = "allow" }
panic_in_result_fn = { level = "allow" }
partial_pub_fields = { level = "allow" }
print_stderr = { level = "allow" }
print_stdout = { level = "allow" }
pub_use = { level = "allow" }
pub_with_shorthand = { level = "allow" }
question_mark_used = { level = "allow" }
self_named_module_files = { level = "allow" }
semicolon_inside_block = { level = "allow" }
single_call_fn = { level = "allow" }
single_char_lifetime_names = { level = "allow" }
std_instead_of_alloc = { level = "allow" }
std_instead_of_core = { level = "allow" }
struct_field_names = { level = "allow" }
unseparated_literal_suffix = { level = "allow" }
use_debug = { level = "allow" }
wildcard_enum_match_arm = { level = "allow" }
# TODO: Address these allow-by-default lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
arithmetic_side_effects = { level = "allow" }
as_conversions = { level = "allow" }
as_pointer_underscore = { level = "allow" }
as_underscore = { level = "allow" }
assertions_on_result_states = { level = "allow" }
cast_possible_truncation = { level = "allow" }
cast_possible_wrap = { level = "allow" }
cast_precision_loss = { level = "allow" }
cast_sign_loss = { level = "allow" }
cfg_not_test = { level = "allow" }
dbg_macro = { level = "allow" }
error_impl_error = { level = "allow" }
impl_trait_in_params = { level = "allow" }
indexing_slicing = { level = "allow" }
infinite_loop = { level = "allow" }
integer_division = { level = "allow" }
large_stack_frames = { level = "allow" }
missing_assert_message = { level = "allow" }
missing_errors_doc = { level = "allow" }
missing_panics_doc = { level = "allow" }
pattern_type_mismatch = { level = "allow" }
ref_patterns = { level = "allow" }
renamed_function_params = { level = "allow" }
same_name_method = { level = "allow" }
shadow_reuse = { level = "allow" }
shadow_same = { level = "allow" }
shadow_unrelated = { level = "allow" }
tests_outside_test_module = { level = "allow" }
todo = { level = "allow" }
unimplemented = { level = "allow" }
unreachable = { level = "allow" }
unwrap_in_result = { level = "allow" }
unwrap_used = { level = "allow" }
[lints.rust]
# Explicitly allowed lints
# Lints which are allow-by-default but have been changed to "warn"
redundant_imports = { level = "warn" }
redundant_lifetimes = { level = "warn" }
# TODO: Address these allow-by-default Rustc lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
absolute_paths_not_starting_with_crate = { level = "allow" }
ambiguous_negative_literals = { level = "allow" }
closure_returning_async_block = { level = "allow" }
deprecated_safe_2024 = { level = "allow" }
deref_into_dyn_supertrait = { level = "allow" }
edition_2024_expr_fragment_specifier = { level = "allow" }
elided_lifetimes_in_paths = { level = "allow" }
explicit_outlives_requirements = { level = "allow" }
ffi_unwind_calls = { level = "allow" }
if_let_rescope = { level = "allow" }
impl_trait_overcaptures = { level = "allow" }
impl_trait_redundant_captures = { level = "allow" }
keyword-idents = { level = "allow" }
keyword_idents_2018 = { level = "allow" }
keyword_idents_2024 = { level = "allow" }
let_underscore_drop = { level = "allow" }
linker_messages = { level = "allow" }
macro_use_extern_crate = { level = "allow" }
meta_variable_misuse = { level = "allow" }
missing_copy_implementations = { level = "allow" }
missing_debug_implementations = { level = "allow" }
missing_docs = { level = "allow" }
missing_unsafe_on_extern = { level = "allow" }
non_ascii_idents = { level = "allow" }
rust_2021_incompatible_closure_captures = { level = "allow" }
rust_2021_incompatible_or_patterns = { level = "allow" }
rust_2021_prefixes_incompatible_syntax = { level = "allow" }
rust_2021_prelude_collisions = { level = "allow" }
rust_2024_guarded_string_incompatible_syntax = { level = "allow" }
rust_2024_incompatible_pat = { level = "allow" }
rust_2024_prelude_collisions = { level = "allow" }
single_use_lifetimes = { level = "allow" }
tail_expr_drop_order = { level = "allow" }
trivial_casts = { level = "allow" }
trivial_numeric_casts = { level = "allow" }
unit_bindings = { level = "allow" }
unnameable_types = { level = "allow" }
unreachable_pub = { level = "allow" }
unsafe_attr_outside_unsafe = { level = "allow" }
unsafe_code = { level = "allow" }
unsafe_op_in_unsafe_fn = { level = "allow" }
unstable_features = { level = "allow" }
unused_crate_dependencies = { level = "allow" }
unused_extern_crates = { level = "allow" }
unused_import_braces = { level = "allow" }
unused_lifetimes = { level = "allow" }
unused_macro_rules = { level = "allow" }
unused_qualifications = { level = "allow" }
unused_results = { level = "allow" }
variant_size_differences = { level = "allow" }

View File

@ -14,3 +14,163 @@ risc0-zkvm = { version = "2.0.0", default-features = false, features
[patch.crates-io]
# add RISC Zero accelerator support for all downstream usages of the following crates.
sha2 = { git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.8-risczero.0" }
[lints.clippy]
# Nursery and allowed nursery warnings (new lints will warn by default)
nursery = { level = "warn", priority = -1 }
# Pedantic and allowed pedantic warnings (new lints will warn by default)
pedantic = { level = "warn", priority = -1 }
similar_names = { level = "allow" }
# Restriction and allowed restriction warnings (new lints will warn by default)
restriction = { level = "warn", priority = -1 }
absolute_paths = { level = "allow" }
alloc_instead_of_core = { level = "allow" }
arbitrary_source_item_ordering = { level = "allow" }
big_endian_bytes = { level = "allow" }
blanket_clippy_restriction_lints = { level = "allow" }
decimal_literal_representation = { level = "allow" }
default_numeric_fallback = { level = "allow" }
deref_by_slicing = { level = "allow" }
else_if_without_else = { level = "allow" }
exhaustive_enums = { level = "allow" }
exhaustive_structs = { level = "allow" }
exit = { level = "allow" }
expect_used = { level = "allow" }
field_scoped_visibility_modifiers = { level = "allow" }
float_arithmetic = { level = "allow" }
get_unwrap = { level = "allow" }
host_endian_bytes = { level = "allow" }
implicit_return = { level = "allow" }
integer_division_remainder_used = { level = "allow" }
iter_over_hash_type = { level = "allow" }
let_underscore_must_use = { level = "allow" }
let_underscore_untyped = { level = "allow" }
little_endian_bytes = { level = "allow" }
map_err_ignore = { level = "allow" }
min_ident_chars = { level = "allow" }
missing_asserts_for_indexing = { level = "allow" }
missing_docs_in_private_items = { level = "allow" }
missing_inline_in_public_items = { level = "allow" }
missing_trait_methods = { level = "allow" }
mixed_read_write_in_expression = { level = "allow" }
mod_module_files = { level = "allow" }
module_name_repetitions = { level = "allow" }
modulo_arithmetic = { level = "allow" }
panic = { level = "allow" }
panic_in_result_fn = { level = "allow" }
partial_pub_fields = { level = "allow" }
print_stderr = { level = "allow" }
print_stdout = { level = "allow" }
pub_use = { level = "allow" }
pub_with_shorthand = { level = "allow" }
question_mark_used = { level = "allow" }
self_named_module_files = { level = "allow" }
semicolon_inside_block = { level = "allow" }
single_call_fn = { level = "allow" }
single_char_lifetime_names = { level = "allow" }
std_instead_of_alloc = { level = "allow" }
std_instead_of_core = { level = "allow" }
struct_field_names = { level = "allow" }
unseparated_literal_suffix = { level = "allow" }
use_debug = { level = "allow" }
wildcard_enum_match_arm = { level = "allow" }
# TODO: Address these allow-by-default lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
arithmetic_side_effects = { level = "allow" }
as_conversions = { level = "allow" }
as_pointer_underscore = { level = "allow" }
as_underscore = { level = "allow" }
assertions_on_result_states = { level = "allow" }
cast_possible_truncation = { level = "allow" }
cast_possible_wrap = { level = "allow" }
cast_precision_loss = { level = "allow" }
cast_sign_loss = { level = "allow" }
cfg_not_test = { level = "allow" }
dbg_macro = { level = "allow" }
error_impl_error = { level = "allow" }
impl_trait_in_params = { level = "allow" }
indexing_slicing = { level = "allow" }
infinite_loop = { level = "allow" }
integer_division = { level = "allow" }
large_stack_frames = { level = "allow" }
missing_assert_message = { level = "allow" }
missing_errors_doc = { level = "allow" }
missing_panics_doc = { level = "allow" }
pattern_type_mismatch = { level = "allow" }
ref_patterns = { level = "allow" }
renamed_function_params = { level = "allow" }
same_name_method = { level = "allow" }
shadow_reuse = { level = "allow" }
shadow_same = { level = "allow" }
shadow_unrelated = { level = "allow" }
tests_outside_test_module = { level = "allow" }
todo = { level = "allow" }
unimplemented = { level = "allow" }
unreachable = { level = "allow" }
unwrap_in_result = { level = "allow" }
unwrap_used = { level = "allow" }
[lints.rust]
# Explicitly allowed lints
# Lints which are allow-by-default but have been changed to "warn"
redundant_imports = { level = "warn" }
redundant_lifetimes = { level = "warn" }
# TODO: Address these allow-by-default Rustc lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
absolute_paths_not_starting_with_crate = { level = "allow" }
ambiguous_negative_literals = { level = "allow" }
closure_returning_async_block = { level = "allow" }
deprecated_safe_2024 = { level = "allow" }
deref_into_dyn_supertrait = { level = "allow" }
edition_2024_expr_fragment_specifier = { level = "allow" }
elided_lifetimes_in_paths = { level = "allow" }
explicit_outlives_requirements = { level = "allow" }
ffi_unwind_calls = { level = "allow" }
if_let_rescope = { level = "allow" }
impl_trait_overcaptures = { level = "allow" }
impl_trait_redundant_captures = { level = "allow" }
keyword-idents = { level = "allow" }
keyword_idents_2018 = { level = "allow" }
keyword_idents_2024 = { level = "allow" }
let_underscore_drop = { level = "allow" }
linker_messages = { level = "allow" }
macro_use_extern_crate = { level = "allow" }
meta_variable_misuse = { level = "allow" }
missing_copy_implementations = { level = "allow" }
missing_debug_implementations = { level = "allow" }
missing_docs = { level = "allow" }
missing_unsafe_on_extern = { level = "allow" }
non_ascii_idents = { level = "allow" }
rust_2021_incompatible_closure_captures = { level = "allow" }
rust_2021_incompatible_or_patterns = { level = "allow" }
rust_2021_prefixes_incompatible_syntax = { level = "allow" }
rust_2021_prelude_collisions = { level = "allow" }
rust_2024_guarded_string_incompatible_syntax = { level = "allow" }
rust_2024_incompatible_pat = { level = "allow" }
rust_2024_prelude_collisions = { level = "allow" }
single_use_lifetimes = { level = "allow" }
tail_expr_drop_order = { level = "allow" }
trivial_casts = { level = "allow" }
trivial_numeric_casts = { level = "allow" }
unit_bindings = { level = "allow" }
unnameable_types = { level = "allow" }
unreachable_pub = { level = "allow" }
unsafe_attr_outside_unsafe = { level = "allow" }
unsafe_code = { level = "allow" }
unsafe_op_in_unsafe_fn = { level = "allow" }
unstable_features = { level = "allow" }
unused_crate_dependencies = { level = "allow" }
unused_extern_crates = { level = "allow" }
unused_import_braces = { level = "allow" }
unused_lifetimes = { level = "allow" }
unused_macro_rules = { level = "allow" }
unused_qualifications = { level = "allow" }
unused_results = { level = "allow" }
variant_size_differences = { level = "allow" }

View File

@ -9,3 +9,163 @@ version = "0.1.0"
[dependencies]
nomos_proof_statements = { path = "../../proof_statements" }
risc0-zkvm = { version = "2.0.0", default-features = false, features = ['std'] }
[lints.clippy]
# Nursery and allowed nursery warnings (new lints will warn by default)
nursery = { level = "warn", priority = -1 }
# Pedantic and allowed pedantic warnings (new lints will warn by default)
pedantic = { level = "warn", priority = -1 }
similar_names = { level = "allow" }
# Restriction and allowed restriction warnings (new lints will warn by default)
restriction = { level = "warn", priority = -1 }
absolute_paths = { level = "allow" }
alloc_instead_of_core = { level = "allow" }
arbitrary_source_item_ordering = { level = "allow" }
big_endian_bytes = { level = "allow" }
blanket_clippy_restriction_lints = { level = "allow" }
decimal_literal_representation = { level = "allow" }
default_numeric_fallback = { level = "allow" }
deref_by_slicing = { level = "allow" }
else_if_without_else = { level = "allow" }
exhaustive_enums = { level = "allow" }
exhaustive_structs = { level = "allow" }
exit = { level = "allow" }
expect_used = { level = "allow" }
field_scoped_visibility_modifiers = { level = "allow" }
float_arithmetic = { level = "allow" }
get_unwrap = { level = "allow" }
host_endian_bytes = { level = "allow" }
implicit_return = { level = "allow" }
integer_division_remainder_used = { level = "allow" }
iter_over_hash_type = { level = "allow" }
let_underscore_must_use = { level = "allow" }
let_underscore_untyped = { level = "allow" }
little_endian_bytes = { level = "allow" }
map_err_ignore = { level = "allow" }
min_ident_chars = { level = "allow" }
missing_asserts_for_indexing = { level = "allow" }
missing_docs_in_private_items = { level = "allow" }
missing_inline_in_public_items = { level = "allow" }
missing_trait_methods = { level = "allow" }
mixed_read_write_in_expression = { level = "allow" }
mod_module_files = { level = "allow" }
module_name_repetitions = { level = "allow" }
modulo_arithmetic = { level = "allow" }
panic = { level = "allow" }
panic_in_result_fn = { level = "allow" }
partial_pub_fields = { level = "allow" }
print_stderr = { level = "allow" }
print_stdout = { level = "allow" }
pub_use = { level = "allow" }
pub_with_shorthand = { level = "allow" }
question_mark_used = { level = "allow" }
self_named_module_files = { level = "allow" }
semicolon_inside_block = { level = "allow" }
single_call_fn = { level = "allow" }
single_char_lifetime_names = { level = "allow" }
std_instead_of_alloc = { level = "allow" }
std_instead_of_core = { level = "allow" }
struct_field_names = { level = "allow" }
unseparated_literal_suffix = { level = "allow" }
use_debug = { level = "allow" }
wildcard_enum_match_arm = { level = "allow" }
# TODO: Address these allow-by-default lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
arithmetic_side_effects = { level = "allow" }
as_conversions = { level = "allow" }
as_pointer_underscore = { level = "allow" }
as_underscore = { level = "allow" }
assertions_on_result_states = { level = "allow" }
cast_possible_truncation = { level = "allow" }
cast_possible_wrap = { level = "allow" }
cast_precision_loss = { level = "allow" }
cast_sign_loss = { level = "allow" }
cfg_not_test = { level = "allow" }
dbg_macro = { level = "allow" }
error_impl_error = { level = "allow" }
impl_trait_in_params = { level = "allow" }
indexing_slicing = { level = "allow" }
infinite_loop = { level = "allow" }
integer_division = { level = "allow" }
large_stack_frames = { level = "allow" }
missing_assert_message = { level = "allow" }
missing_errors_doc = { level = "allow" }
missing_panics_doc = { level = "allow" }
pattern_type_mismatch = { level = "allow" }
ref_patterns = { level = "allow" }
renamed_function_params = { level = "allow" }
same_name_method = { level = "allow" }
shadow_reuse = { level = "allow" }
shadow_same = { level = "allow" }
shadow_unrelated = { level = "allow" }
tests_outside_test_module = { level = "allow" }
todo = { level = "allow" }
unimplemented = { level = "allow" }
unreachable = { level = "allow" }
unwrap_in_result = { level = "allow" }
unwrap_used = { level = "allow" }
[lints.rust]
# Explicitly allowed lints
# Lints which are allow-by-default but have been changed to "warn"
redundant_imports = { level = "warn" }
redundant_lifetimes = { level = "warn" }
# TODO: Address these allow-by-default Rustc lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
absolute_paths_not_starting_with_crate = { level = "allow" }
ambiguous_negative_literals = { level = "allow" }
closure_returning_async_block = { level = "allow" }
deprecated_safe_2024 = { level = "allow" }
deref_into_dyn_supertrait = { level = "allow" }
edition_2024_expr_fragment_specifier = { level = "allow" }
elided_lifetimes_in_paths = { level = "allow" }
explicit_outlives_requirements = { level = "allow" }
ffi_unwind_calls = { level = "allow" }
if_let_rescope = { level = "allow" }
impl_trait_overcaptures = { level = "allow" }
impl_trait_redundant_captures = { level = "allow" }
keyword-idents = { level = "allow" }
keyword_idents_2018 = { level = "allow" }
keyword_idents_2024 = { level = "allow" }
let_underscore_drop = { level = "allow" }
linker_messages = { level = "allow" }
macro_use_extern_crate = { level = "allow" }
meta_variable_misuse = { level = "allow" }
missing_copy_implementations = { level = "allow" }
missing_debug_implementations = { level = "allow" }
missing_docs = { level = "allow" }
missing_unsafe_on_extern = { level = "allow" }
non_ascii_idents = { level = "allow" }
rust_2021_incompatible_closure_captures = { level = "allow" }
rust_2021_incompatible_or_patterns = { level = "allow" }
rust_2021_prefixes_incompatible_syntax = { level = "allow" }
rust_2021_prelude_collisions = { level = "allow" }
rust_2024_guarded_string_incompatible_syntax = { level = "allow" }
rust_2024_incompatible_pat = { level = "allow" }
rust_2024_prelude_collisions = { level = "allow" }
single_use_lifetimes = { level = "allow" }
tail_expr_drop_order = { level = "allow" }
trivial_casts = { level = "allow" }
trivial_numeric_casts = { level = "allow" }
unit_bindings = { level = "allow" }
unnameable_types = { level = "allow" }
unreachable_pub = { level = "allow" }
unsafe_attr_outside_unsafe = { level = "allow" }
unsafe_code = { level = "allow" }
unsafe_op_in_unsafe_fn = { level = "allow" }
unstable_features = { level = "allow" }
unused_crate_dependencies = { level = "allow" }
unused_extern_crates = { level = "allow" }
unused_import_braces = { level = "allow" }
unused_lifetimes = { level = "allow" }
unused_macro_rules = { level = "allow" }
unused_qualifications = { level = "allow" }
unused_results = { level = "allow" }
variant_size_differences = { level = "allow" }

View File

@ -15,3 +15,163 @@ risc0-zkvm = { version = "2.0.0", default-features = false, features
# add RISC Zero accelerator support for all downstream usages of the following crates.
crypto-bigint = { git = "https://github.com/risc0/RustCrypto-crypto-bigint", tag = "v0.5.5-risczero.0" }
sha2 = { git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.8-risczero.0" }
[lints.clippy]
# Nursery and allowed nursery warnings (new lints will warn by default)
nursery = { level = "warn", priority = -1 }
# Pedantic and allowed pedantic warnings (new lints will warn by default)
pedantic = { level = "warn", priority = -1 }
similar_names = { level = "allow" }
# Restriction and allowed restriction warnings (new lints will warn by default)
restriction = { level = "warn", priority = -1 }
absolute_paths = { level = "allow" }
alloc_instead_of_core = { level = "allow" }
arbitrary_source_item_ordering = { level = "allow" }
big_endian_bytes = { level = "allow" }
blanket_clippy_restriction_lints = { level = "allow" }
decimal_literal_representation = { level = "allow" }
default_numeric_fallback = { level = "allow" }
deref_by_slicing = { level = "allow" }
else_if_without_else = { level = "allow" }
exhaustive_enums = { level = "allow" }
exhaustive_structs = { level = "allow" }
exit = { level = "allow" }
expect_used = { level = "allow" }
field_scoped_visibility_modifiers = { level = "allow" }
float_arithmetic = { level = "allow" }
get_unwrap = { level = "allow" }
host_endian_bytes = { level = "allow" }
implicit_return = { level = "allow" }
integer_division_remainder_used = { level = "allow" }
iter_over_hash_type = { level = "allow" }
let_underscore_must_use = { level = "allow" }
let_underscore_untyped = { level = "allow" }
little_endian_bytes = { level = "allow" }
map_err_ignore = { level = "allow" }
min_ident_chars = { level = "allow" }
missing_asserts_for_indexing = { level = "allow" }
missing_docs_in_private_items = { level = "allow" }
missing_inline_in_public_items = { level = "allow" }
missing_trait_methods = { level = "allow" }
mixed_read_write_in_expression = { level = "allow" }
mod_module_files = { level = "allow" }
module_name_repetitions = { level = "allow" }
modulo_arithmetic = { level = "allow" }
panic = { level = "allow" }
panic_in_result_fn = { level = "allow" }
partial_pub_fields = { level = "allow" }
print_stderr = { level = "allow" }
print_stdout = { level = "allow" }
pub_use = { level = "allow" }
pub_with_shorthand = { level = "allow" }
question_mark_used = { level = "allow" }
self_named_module_files = { level = "allow" }
semicolon_inside_block = { level = "allow" }
single_call_fn = { level = "allow" }
single_char_lifetime_names = { level = "allow" }
std_instead_of_alloc = { level = "allow" }
std_instead_of_core = { level = "allow" }
struct_field_names = { level = "allow" }
unseparated_literal_suffix = { level = "allow" }
use_debug = { level = "allow" }
wildcard_enum_match_arm = { level = "allow" }
# TODO: Address these allow-by-default lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
arithmetic_side_effects = { level = "allow" }
as_conversions = { level = "allow" }
as_pointer_underscore = { level = "allow" }
as_underscore = { level = "allow" }
assertions_on_result_states = { level = "allow" }
cast_possible_truncation = { level = "allow" }
cast_possible_wrap = { level = "allow" }
cast_precision_loss = { level = "allow" }
cast_sign_loss = { level = "allow" }
cfg_not_test = { level = "allow" }
dbg_macro = { level = "allow" }
error_impl_error = { level = "allow" }
impl_trait_in_params = { level = "allow" }
indexing_slicing = { level = "allow" }
infinite_loop = { level = "allow" }
integer_division = { level = "allow" }
large_stack_frames = { level = "allow" }
missing_assert_message = { level = "allow" }
missing_errors_doc = { level = "allow" }
missing_panics_doc = { level = "allow" }
pattern_type_mismatch = { level = "allow" }
ref_patterns = { level = "allow" }
renamed_function_params = { level = "allow" }
same_name_method = { level = "allow" }
shadow_reuse = { level = "allow" }
shadow_same = { level = "allow" }
shadow_unrelated = { level = "allow" }
tests_outside_test_module = { level = "allow" }
todo = { level = "allow" }
unimplemented = { level = "allow" }
unreachable = { level = "allow" }
unwrap_in_result = { level = "allow" }
unwrap_used = { level = "allow" }
[lints.rust]
# Explicitly allowed lints
# Lints which are allow-by-default but have been changed to "warn"
redundant_imports = { level = "warn" }
redundant_lifetimes = { level = "warn" }
# TODO: Address these allow-by-default Rustc lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
absolute_paths_not_starting_with_crate = { level = "allow" }
ambiguous_negative_literals = { level = "allow" }
closure_returning_async_block = { level = "allow" }
deprecated_safe_2024 = { level = "allow" }
deref_into_dyn_supertrait = { level = "allow" }
edition_2024_expr_fragment_specifier = { level = "allow" }
elided_lifetimes_in_paths = { level = "allow" }
explicit_outlives_requirements = { level = "allow" }
ffi_unwind_calls = { level = "allow" }
if_let_rescope = { level = "allow" }
impl_trait_overcaptures = { level = "allow" }
impl_trait_redundant_captures = { level = "allow" }
keyword-idents = { level = "allow" }
keyword_idents_2018 = { level = "allow" }
keyword_idents_2024 = { level = "allow" }
let_underscore_drop = { level = "allow" }
linker_messages = { level = "allow" }
macro_use_extern_crate = { level = "allow" }
meta_variable_misuse = { level = "allow" }
missing_copy_implementations = { level = "allow" }
missing_debug_implementations = { level = "allow" }
missing_docs = { level = "allow" }
missing_unsafe_on_extern = { level = "allow" }
non_ascii_idents = { level = "allow" }
rust_2021_incompatible_closure_captures = { level = "allow" }
rust_2021_incompatible_or_patterns = { level = "allow" }
rust_2021_prefixes_incompatible_syntax = { level = "allow" }
rust_2021_prelude_collisions = { level = "allow" }
rust_2024_guarded_string_incompatible_syntax = { level = "allow" }
rust_2024_incompatible_pat = { level = "allow" }
rust_2024_prelude_collisions = { level = "allow" }
single_use_lifetimes = { level = "allow" }
tail_expr_drop_order = { level = "allow" }
trivial_casts = { level = "allow" }
trivial_numeric_casts = { level = "allow" }
unit_bindings = { level = "allow" }
unnameable_types = { level = "allow" }
unreachable_pub = { level = "allow" }
unsafe_attr_outside_unsafe = { level = "allow" }
unsafe_code = { level = "allow" }
unsafe_op_in_unsafe_fn = { level = "allow" }
unstable_features = { level = "allow" }
unused_crate_dependencies = { level = "allow" }
unused_extern_crates = { level = "allow" }
unused_import_braces = { level = "allow" }
unused_lifetimes = { level = "allow" }
unused_macro_rules = { level = "allow" }
unused_qualifications = { level = "allow" }
unused_results = { level = "allow" }
variant_size_differences = { level = "allow" }

View File

@ -14,3 +14,163 @@ risc0-zkvm = { version = "2.0.0", default-features = false, features
[patch.crates-io]
# add RISC Zero accelerator support for all downstream usages of the following crates.
sha2 = { git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.8-risczero.0" }
[lints.clippy]
# Nursery and allowed nursery warnings (new lints will warn by default)
nursery = { level = "warn", priority = -1 }
# Pedantic and allowed pedantic warnings (new lints will warn by default)
pedantic = { level = "warn", priority = -1 }
similar_names = { level = "allow" }
# Restriction and allowed restriction warnings (new lints will warn by default)
restriction = { level = "warn", priority = -1 }
absolute_paths = { level = "allow" }
alloc_instead_of_core = { level = "allow" }
arbitrary_source_item_ordering = { level = "allow" }
big_endian_bytes = { level = "allow" }
blanket_clippy_restriction_lints = { level = "allow" }
decimal_literal_representation = { level = "allow" }
default_numeric_fallback = { level = "allow" }
deref_by_slicing = { level = "allow" }
else_if_without_else = { level = "allow" }
exhaustive_enums = { level = "allow" }
exhaustive_structs = { level = "allow" }
exit = { level = "allow" }
expect_used = { level = "allow" }
field_scoped_visibility_modifiers = { level = "allow" }
float_arithmetic = { level = "allow" }
get_unwrap = { level = "allow" }
host_endian_bytes = { level = "allow" }
implicit_return = { level = "allow" }
integer_division_remainder_used = { level = "allow" }
iter_over_hash_type = { level = "allow" }
let_underscore_must_use = { level = "allow" }
let_underscore_untyped = { level = "allow" }
little_endian_bytes = { level = "allow" }
map_err_ignore = { level = "allow" }
min_ident_chars = { level = "allow" }
missing_asserts_for_indexing = { level = "allow" }
missing_docs_in_private_items = { level = "allow" }
missing_inline_in_public_items = { level = "allow" }
missing_trait_methods = { level = "allow" }
mixed_read_write_in_expression = { level = "allow" }
mod_module_files = { level = "allow" }
module_name_repetitions = { level = "allow" }
modulo_arithmetic = { level = "allow" }
panic = { level = "allow" }
panic_in_result_fn = { level = "allow" }
partial_pub_fields = { level = "allow" }
print_stderr = { level = "allow" }
print_stdout = { level = "allow" }
pub_use = { level = "allow" }
pub_with_shorthand = { level = "allow" }
question_mark_used = { level = "allow" }
self_named_module_files = { level = "allow" }
semicolon_inside_block = { level = "allow" }
single_call_fn = { level = "allow" }
single_char_lifetime_names = { level = "allow" }
std_instead_of_alloc = { level = "allow" }
std_instead_of_core = { level = "allow" }
struct_field_names = { level = "allow" }
unseparated_literal_suffix = { level = "allow" }
use_debug = { level = "allow" }
wildcard_enum_match_arm = { level = "allow" }
# TODO: Address these allow-by-default lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
arithmetic_side_effects = { level = "allow" }
as_conversions = { level = "allow" }
as_pointer_underscore = { level = "allow" }
as_underscore = { level = "allow" }
assertions_on_result_states = { level = "allow" }
cast_possible_truncation = { level = "allow" }
cast_possible_wrap = { level = "allow" }
cast_precision_loss = { level = "allow" }
cast_sign_loss = { level = "allow" }
cfg_not_test = { level = "allow" }
dbg_macro = { level = "allow" }
error_impl_error = { level = "allow" }
impl_trait_in_params = { level = "allow" }
indexing_slicing = { level = "allow" }
infinite_loop = { level = "allow" }
integer_division = { level = "allow" }
large_stack_frames = { level = "allow" }
missing_assert_message = { level = "allow" }
missing_errors_doc = { level = "allow" }
missing_panics_doc = { level = "allow" }
pattern_type_mismatch = { level = "allow" }
ref_patterns = { level = "allow" }
renamed_function_params = { level = "allow" }
same_name_method = { level = "allow" }
shadow_reuse = { level = "allow" }
shadow_same = { level = "allow" }
shadow_unrelated = { level = "allow" }
tests_outside_test_module = { level = "allow" }
todo = { level = "allow" }
unimplemented = { level = "allow" }
unreachable = { level = "allow" }
unwrap_in_result = { level = "allow" }
unwrap_used = { level = "allow" }
[lints.rust]
# Explicitly allowed lints
# Lints which are allow-by-default but have been changed to "warn"
redundant_imports = { level = "warn" }
redundant_lifetimes = { level = "warn" }
# TODO: Address these allow-by-default Rustc lints at some point by either allowing them permanently or enforce them, and move them to the relative section according to the decision.
absolute_paths_not_starting_with_crate = { level = "allow" }
ambiguous_negative_literals = { level = "allow" }
closure_returning_async_block = { level = "allow" }
deprecated_safe_2024 = { level = "allow" }
deref_into_dyn_supertrait = { level = "allow" }
edition_2024_expr_fragment_specifier = { level = "allow" }
elided_lifetimes_in_paths = { level = "allow" }
explicit_outlives_requirements = { level = "allow" }
ffi_unwind_calls = { level = "allow" }
if_let_rescope = { level = "allow" }
impl_trait_overcaptures = { level = "allow" }
impl_trait_redundant_captures = { level = "allow" }
keyword-idents = { level = "allow" }
keyword_idents_2018 = { level = "allow" }
keyword_idents_2024 = { level = "allow" }
let_underscore_drop = { level = "allow" }
linker_messages = { level = "allow" }
macro_use_extern_crate = { level = "allow" }
meta_variable_misuse = { level = "allow" }
missing_copy_implementations = { level = "allow" }
missing_debug_implementations = { level = "allow" }
missing_docs = { level = "allow" }
missing_unsafe_on_extern = { level = "allow" }
non_ascii_idents = { level = "allow" }
rust_2021_incompatible_closure_captures = { level = "allow" }
rust_2021_incompatible_or_patterns = { level = "allow" }
rust_2021_prefixes_incompatible_syntax = { level = "allow" }
rust_2021_prelude_collisions = { level = "allow" }
rust_2024_guarded_string_incompatible_syntax = { level = "allow" }
rust_2024_incompatible_pat = { level = "allow" }
rust_2024_prelude_collisions = { level = "allow" }
single_use_lifetimes = { level = "allow" }
tail_expr_drop_order = { level = "allow" }
trivial_casts = { level = "allow" }
trivial_numeric_casts = { level = "allow" }
unit_bindings = { level = "allow" }
unnameable_types = { level = "allow" }
unreachable_pub = { level = "allow" }
unsafe_attr_outside_unsafe = { level = "allow" }
unsafe_code = { level = "allow" }
unsafe_op_in_unsafe_fn = { level = "allow" }
unstable_features = { level = "allow" }
unused_crate_dependencies = { level = "allow" }
unused_extern_crates = { level = "allow" }
unused_import_braces = { level = "allow" }
unused_lifetimes = { level = "allow" }
unused_macro_rules = { level = "allow" }
unused_qualifications = { level = "allow" }
unused_results = { level = "allow" }
variant_size_differences = { level = "allow" }

View File

@ -4,7 +4,8 @@ license = { workspace = true }
name = "kzgrs-backend"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
ark-ff = "0.4"

View File

@ -4,7 +4,8 @@ license = { workspace = true }
name = "kzgrs"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
ark-bls12-381 = { version = "0.4.0" }

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-da-network-core"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
cached = { workspace = true }
either = "1.13.0"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-da-messages"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
futures = "0.3.31"
kzgrs-backend = { workspace = true }

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "subnetworks-assignations"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
libp2p = { version = "0.55", default-features = false }
libp2p-identity = { version = "0.2", features = ["peerid", "serde"] }

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-libp2p"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
blake2 = { version = "0.10" }
futures = "0.3"

View File

@ -4,12 +4,13 @@ license.workspace = true
name = "nomos-mantle-core"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
blake2 = { workspace = true }
bytes = { workspace = true }
nomos-core = { workspace = true }
nomos-sdp-core = { workspace = true }
serde = { version = "1.0", features = ["derive"] }
#[dev-dependencies]
serde_json = "1.0"
serde_json = "1.0"

View File

@ -4,6 +4,9 @@ license.workspace = true
name = "nomos-sdp-core"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
blake2 = "0.10"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-api"
version = "0.1.0"
[lints]
workspace = true
[features]
axum = ["dep:axum", "dep:hyper", "utoipa-swagger-ui/axum"]
default = ["axum"]

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-blend-service"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
futures = "0.3"

View File

@ -4,7 +4,8 @@ license = { workspace = true }
name = "cryptarchia-consensus"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
async-trait = "0.1"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-da-dispersal"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
futures = "0.3"

View File

@ -4,7 +4,8 @@ license = { workspace = true }
name = "nomos-da-indexer"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
async-trait = "0.1"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-da-network-service"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
arc-swap = "1"
async-trait = "0.1"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-da-sampling"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
bytes = { workspace = true }

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-da-verifier"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
futures = "0.3"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "key-management-system"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
bytes = { workspace = true }

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-membership"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
futures = "0.3"

View File

@ -4,7 +4,15 @@ license = { workspace = true }
name = "nomos-mempool"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by `utoipa`.
"serde_json",
]
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
@ -40,10 +48,3 @@ mock = ["dep:linked-hash-map", "nomos-core/mock", "nomos-network/mock
# enable to help generate OpenAPI
openapi = ["dep:serde_json", "dep:utoipa"]
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by `utoipa`.
"serde_json",
]

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-network"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
chrono = { version = "0.4", optional = true }

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-sdp"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
futures = "0.3"

View File

@ -4,7 +4,8 @@ license = { workspace = true }
name = "nomos-storage"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
async-trait = "0.1"

View File

@ -4,7 +4,8 @@ license = { workspace = true }
name = "nomos-system-sig"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
async-ctrlc = "1.2"

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-time"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
async-trait = "0.1"
cfg_eval = { version = "0.1", optional = true }

View File

@ -4,7 +4,8 @@ license = { workspace = true }
name = "nomos-tracing-service"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lints]
workspace = true
[dependencies]
async-trait = "0.1"

View File

@ -4,6 +4,16 @@ license = { workspace = true }
name = "services-utils"
version = "0.1.0"
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by Overwatch's `#[derive_services]` macro.
"tracing",
]
[lints]
workspace = true
[dependencies]
async-trait = "0.1.83"
futures = "0.3"
@ -18,10 +28,3 @@ tracing = { workspace = true }
overwatch-derive = { workspace = true }
tokio = { version = "1", features = ["macros"] }
tracing = "0.1"
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by Overwatch's `#[derive_services]` macro.
"tracing",
]

View File

@ -122,7 +122,12 @@ mod tests {
async fn notify_ready_and_wait<Service: ServiceData, RuntimeServiceId>(
service_resources_handle: &OpaqueServiceResourcesHandle<Service, RuntimeServiceId>,
) {
) where
Service::Message: Send,
Service::State: Send + Sync,
Service::Settings: Send + Sync,
RuntimeServiceId: Send,
{
// Notify that the service is ready
service_resources_handle.status_updater.notify_ready();

View File

@ -4,6 +4,16 @@ license = { workspace = true }
name = "nomos-tracing"
version = "0.1.0"
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by `opentelemetry_otlp::new_exporter().with_http_client()`.
"opentelemetry-http",
]
[lints]
workspace = true
[dependencies]
opentelemetry = { version = "0.26" }
opentelemetry-http = { version = "0.26", features = ["reqwest"] }
@ -21,10 +31,3 @@ tracing-loki = "0.2.5"
tracing-opentelemetry = "0.27"
tracing-subscriber = { version = "0.3", features = ["env-filter", "json", "registry"] }
url = { version = "2", features = ["serde"] }
[package.metadata.cargo-machete]
# False positives.
ignored = [
# Required by `opentelemetry_otlp::new_exporter().with_http_client()`.
"opentelemetry-http",
]

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "nomos-utils"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
const-hex = "1"
humantime = { version = "2.1", optional = true }

View File

@ -4,6 +4,9 @@ license = { workspace = true }
name = "cfgsync"
version = "0.1.0"
[lints]
workspace = true
[dependencies]
axum = { version = "0.6" }
clap = { version = "4", features = ["derive"] }

View File

@ -5,6 +5,9 @@ name = "tests"
publish = false
version = "0.1.0"
[lints]
workspace = true
[dependencies]
blst = { version = "0.3.11" }
cl = { workspace = true }