From 0fafa5a65af2dca5f693334b1fed216551bad150 Mon Sep 17 00:00:00 2001 From: Gustavo Gonzalez Date: Sun, 20 Oct 2024 19:40:08 -0400 Subject: [PATCH] use mini-alloc by default and hide panic handler when std --- Cargo.lock | 34 ++++++++++++++++++++----------- Cargo.toml | 2 +- contracts/src/lib.rs | 6 ++---- examples/merkle-proofs/src/lib.rs | 3 --- 4 files changed, 25 insertions(+), 20 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 151e9aa8..0cc53cb6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -10,7 +10,7 @@ dependencies = [ "alloy-primitives", "e2e", "eyre", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-stylus", "stylus-proc", "stylus-sdk", @@ -797,7 +797,7 @@ name = "basic-example" version = "0.1.0" dependencies = [ "alloy-primitives", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-stylus", "stylus-proc", "stylus-sdk", @@ -1268,7 +1268,7 @@ dependencies = [ "alloy-primitives", "e2e", "eyre", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-stylus", "stylus-proc", "stylus-sdk", @@ -1520,7 +1520,7 @@ dependencies = [ "alloy-primitives", "e2e", "eyre", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-stylus", "stylus-proc", "stylus-sdk", @@ -1535,7 +1535,7 @@ dependencies = [ "alloy-primitives", "e2e", "eyre", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-stylus", "stylus-proc", "stylus-sdk", @@ -1551,7 +1551,7 @@ dependencies = [ "alloy-sol-types", "e2e", "eyre", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-stylus", "rand", "stylus-proc", @@ -1567,7 +1567,7 @@ dependencies = [ "alloy-primitives", "e2e", "eyre", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-stylus", "rand", "stylus-proc", @@ -1583,7 +1583,7 @@ dependencies = [ "alloy-primitives", "e2e", "eyre", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-stylus", "rand", "stylus-proc", @@ -2364,7 +2364,7 @@ version = "0.1.0" dependencies = [ "alloy-primitives", "alloy-sol-types", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-crypto", "stylus-proc", "stylus-sdk", @@ -2386,6 +2386,15 @@ dependencies = [ "wee_alloc", ] +[[package]] +name = "mini-alloc" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14eacc4bfcf10da9b6d5185ef51b2dc75434afac34b4d8aabe40f6b141ee071c" +dependencies = [ + "cfg-if 1.0.0", +] + [[package]] name = "miniz_oxide" version = "0.7.4" @@ -2577,7 +2586,7 @@ name = "openzeppelin-crypto" version = "0.1.0" dependencies = [ "hex-literal", - "mini-alloc", + "mini-alloc 0.4.2", "rand", "tiny-keccak", ] @@ -2592,7 +2601,7 @@ dependencies = [ "alloy-sol-macro-input", "alloy-sol-types", "keccak-const", - "mini-alloc", + "mini-alloc 0.4.2", "motsu", "openzeppelin-stylus-proc", "rand", @@ -2618,7 +2627,7 @@ dependencies = [ "alloy-primitives", "e2e", "eyre", - "mini-alloc", + "mini-alloc 0.4.2", "openzeppelin-stylus", "stylus-proc", "stylus-sdk", @@ -3561,6 +3570,7 @@ dependencies = [ "hex", "keccak-const", "lazy_static", + "mini-alloc 0.6.0", "stylus-proc", ] diff --git a/Cargo.toml b/Cargo.toml index f308ddea..2446f68c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -63,7 +63,7 @@ all = "warn" [workspace.dependencies] # stylus-related -stylus-sdk = { version = "=0.6.0", default-features = false } +stylus-sdk = "0.6.0" stylus-proc = { version = "=0.6.0", default-features = false } mini-alloc = "0.4.2" diff --git a/contracts/src/lib.rs b/contracts/src/lib.rs index dc71f9b9..d156e366 100644 --- a/contracts/src/lib.rs +++ b/contracts/src/lib.rs @@ -22,6 +22,7 @@ Once defined as a dependency, use one of our pre-defined implementations by importing them: ```ignore +use stylus_sdk::prelude::*; use openzeppelin_stylus::token::erc20::Erc20; sol_storage! { @@ -43,14 +44,11 @@ impl MyContract { } #![deny(rustdoc::broken_intra_doc_links)] extern crate alloc; -#[global_allocator] -static ALLOC: mini_alloc::MiniAlloc = mini_alloc::MiniAlloc::INIT; - pub mod access; pub mod token; pub mod utils; -#[cfg(target_arch = "wasm32")] +#[cfg(all(target_arch = "wasm32", not(feature = "std")))] #[panic_handler] fn panic(_info: &core::panic::PanicInfo) -> ! { loop {} diff --git a/examples/merkle-proofs/src/lib.rs b/examples/merkle-proofs/src/lib.rs index 2fab9264..ce0f10b6 100644 --- a/examples/merkle-proofs/src/lib.rs +++ b/examples/merkle-proofs/src/lib.rs @@ -14,9 +14,6 @@ use stylus_sdk::{ prelude::{entrypoint, public, sol_storage}, }; -#[global_allocator] -static ALLOC: mini_alloc::MiniAlloc = mini_alloc::MiniAlloc::INIT; - #[cfg(target_arch = "wasm32")] #[panic_handler] fn panic(_info: &core::panic::PanicInfo) -> ! {