From 3b8141a9f82cd7f9f7874ed9979ead7faf201f6b Mon Sep 17 00:00:00 2001 From: Leigh McCulloch <351529+leighmcculloch@users.noreply.github.com> Date: Fri, 20 Sep 2024 01:00:52 +1000 Subject: [PATCH 1/3] Fix warnings on contract and contractimpl macros --- soroban-sdk-macros/src/derive_fn.rs | 1 + soroban-sdk-macros/src/lib.rs | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/soroban-sdk-macros/src/derive_fn.rs b/soroban-sdk-macros/src/derive_fn.rs index a980cb0f3..bb24fa6b8 100644 --- a/soroban-sdk-macros/src/derive_fn.rs +++ b/soroban-sdk-macros/src/derive_fn.rs @@ -194,6 +194,7 @@ pub fn derive_contract_function_registration_ctor<'a>( quote! { #[doc(hidden)] #[#crate_path::reexports_for_macros::ctor::ctor] + #[allow(non_snake_case)] fn #ctor_ident() { #( <#ty as #crate_path::testutils::ContractFunctionRegister>::register( diff --git a/soroban-sdk-macros/src/lib.rs b/soroban-sdk-macros/src/lib.rs index b66c1da63..6ddb8f404 100644 --- a/soroban-sdk-macros/src/lib.rs +++ b/soroban-sdk-macros/src/lib.rs @@ -133,7 +133,7 @@ pub fn contract(metadata: TokenStream, input: TokenStream) -> TokenStream { let ty_str = quote!(#ty).to_string(); let client_ident = format!("{ty_str}Client"); - let fn_set_registry_ident = format_ident!("__{ty_str}_fn_set_registry"); + let fn_set_registry_ident = format_ident!("__{}_fn_set_registry", ty_str.to_lowercase()); let crate_path = &args.crate_path; let client = derive_client_type(&args.crate_path, &ty_str, &client_ident); let mut output = quote! { From 43f29e4f9072cedb5578c10e2899df9899725e5d Mon Sep 17 00:00:00 2001 From: Leigh McCulloch <351529+leighmcculloch@users.noreply.github.com> Date: Fri, 20 Sep 2024 15:21:06 +1000 Subject: [PATCH 2/3] ignore more warnings --- soroban-sdk-macros/src/derive_spec_fn.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/soroban-sdk-macros/src/derive_spec_fn.rs b/soroban-sdk-macros/src/derive_spec_fn.rs index a759cc477..2c0afe999 100644 --- a/soroban-sdk-macros/src/derive_spec_fn.rs +++ b/soroban-sdk-macros/src/derive_spec_fn.rs @@ -166,11 +166,13 @@ pub fn derive_fn_spec( Ok(quote! { #[doc(hidden)] #[allow(non_snake_case)] + #[allow(non_upper_case_globals)] #(#attrs)* #export_attr pub static #spec_ident: [u8; #spec_xdr_len] = #ty::#spec_fn_ident(); impl #ty { + #[allow(non_snake_case)] #(#attrs)* pub const fn #spec_fn_ident() -> [u8; #spec_xdr_len] { *#spec_xdr_lit From 11c3f3e6f8935e45498bffa3ba097feeb773e30c Mon Sep 17 00:00:00 2001 From: Leigh McCulloch <351529+leighmcculloch@users.noreply.github.com> Date: Fri, 20 Sep 2024 15:55:20 +1000 Subject: [PATCH 3/3] fix invoke_raw_slice warnings --- soroban-sdk-macros/src/derive_fn.rs | 1 + soroban-sdk-macros/src/lib.rs | 16 +++++++--------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/soroban-sdk-macros/src/derive_fn.rs b/soroban-sdk-macros/src/derive_fn.rs index bb24fa6b8..73c4d50b3 100644 --- a/soroban-sdk-macros/src/derive_fn.rs +++ b/soroban-sdk-macros/src/derive_fn.rs @@ -193,6 +193,7 @@ pub fn derive_contract_function_registration_ctor<'a>( quote! { #[doc(hidden)] + #[cfg(any(test, feature = "testutils"))] #[#crate_path::reexports_for_macros::ctor::ctor] #[allow(non_snake_case)] fn #ctor_ident() { diff --git a/soroban-sdk-macros/src/lib.rs b/soroban-sdk-macros/src/lib.rs index 6ddb8f404..69231f92c 100644 --- a/soroban-sdk-macros/src/lib.rs +++ b/soroban-sdk-macros/src/lib.rs @@ -244,15 +244,13 @@ pub fn contractimpl(metadata: TokenStream, input: TokenStream) -> TokenStream { #imp #derived_ok }; - if cfg!(feature = "testutils") { - let cfs = derive_contract_function_registration_ctor( - crate_path, - ty, - trait_ident, - pub_methods.into_iter(), - ); - output.extend(quote! { #cfs }); - } + let cfs = derive_contract_function_registration_ctor( + crate_path, + ty, + trait_ident, + pub_methods.into_iter(), + ); + output.extend(quote! { #cfs }); output.into() } Err(derived_err) => quote! {