From dcb1e45ff29955db6e714fde1c2f760e728367ac Mon Sep 17 00:00:00 2001 From: Simon Warta Date: Mon, 20 Nov 2023 10:04:07 +0100 Subject: [PATCH 1/5] Add CacheOptions::new --- CHANGELOG.md | 4 ++++ packages/vm/src/cache.rs | 16 ++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index aaff32f83..c26f86007 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to ## [Unreleased] +### Added + +- cosmwasm-vm: Add constructor `CacheOptions::new` + ## [1.5.0] - 2023-10-31 ### Added diff --git a/packages/vm/src/cache.rs b/packages/vm/src/cache.rs index 7bf893bef..e20c5a151 100644 --- a/packages/vm/src/cache.rs +++ b/packages/vm/src/cache.rs @@ -65,6 +65,22 @@ pub struct CacheOptions { pub instance_memory_limit: Size, } +impl CacheOptions { + pub fn new( + base_dir: impl Into, + available_capabilities: impl Into>, + memory_cache_size: Size, + instance_memory_limit: Size, + ) -> Self { + Self { + base_dir: base_dir.into(), + available_capabilities: available_capabilities.into(), + memory_cache_size, + instance_memory_limit, + } + } +} + pub struct CacheInner { /// The directory in which the Wasm blobs are stored in the file system. wasm_path: PathBuf, From 14ef098dcff3ea352ff25f26cad35053abb25035 Mon Sep 17 00:00:00 2001 From: Christoph Otter Date: Mon, 8 Jan 2024 13:20:31 +0100 Subject: [PATCH 2/5] Keep track of number of functions, args and ouputs --- packages/vm/src/parsed_wasm.rs | 37 ++++++++++++++++++++++++++++------ 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/packages/vm/src/parsed_wasm.rs b/packages/vm/src/parsed_wasm.rs index 6de9fbaed..37e504189 100644 --- a/packages/vm/src/parsed_wasm.rs +++ b/packages/vm/src/parsed_wasm.rs @@ -1,5 +1,6 @@ use wasmer::wasmparser::{ - Export, Import, MemoryType, Parser, TableType, ValidPayload, Validator, WasmFeatures, + Export, Import, MemoryType, Parser, Payload, TableType, Type, ValidPayload, Validator, + WasmFeatures, }; use crate::VmResult; @@ -13,6 +14,10 @@ pub struct ParsedWasm<'a> { pub imports: Vec>, pub tables: Vec, pub memories: Vec, + pub function_count: usize, + pub type_count: u32, + pub max_func_params: usize, + pub max_func_results: usize, } impl<'a> ParsedWasm<'a> { @@ -34,6 +39,10 @@ impl<'a> ParsedWasm<'a> { imports: vec![], tables: vec![], memories: vec![], + function_count: 0, + type_count: 0, + max_func_params: 0, + max_func_results: 0, }; let mut fun_allocations = Default::default(); @@ -45,20 +54,36 @@ impl<'a> ParsedWasm<'a> { let mut fun_validator = fv.into_validator(fun_allocations); fun_validator.validate(&body)?; fun_allocations = fun_validator.into_allocations(); + + this.function_count += 1; } match p { - wasmer::wasmparser::Payload::Version { num, .. } => this.version = num, - wasmer::wasmparser::Payload::ImportSection(i) => { + Payload::TypeSection(t) => { + this.type_count = t.get_count(); + for t_res in t { + let ty: Type = t_res?; + match ty { + Type::Func(ft) => { + this.max_func_params = + core::cmp::max(ft.params().len(), this.max_func_params); + this.max_func_results = + core::cmp::max(ft.results().len(), this.max_func_results); + } + } + } + } + Payload::Version { num, .. } => this.version = num, + Payload::ImportSection(i) => { this.imports = i.into_iter().collect::, _>>()?; } - wasmer::wasmparser::Payload::TableSection(t) => { + Payload::TableSection(t) => { this.tables = t.into_iter().collect::, _>>()?; } - wasmer::wasmparser::Payload::MemorySection(m) => { + Payload::MemorySection(m) => { this.memories = m.into_iter().collect::, _>>()?; } - wasmer::wasmparser::Payload::ExportSection(e) => { + Payload::ExportSection(e) => { this.exports = e.into_iter().collect::, _>>()?; } _ => {} // ignore everything else From 0003ca4f553775df573e485756391a80141a7e5b Mon Sep 17 00:00:00 2001 From: Christoph Otter Date: Mon, 8 Jan 2024 13:34:29 +0100 Subject: [PATCH 3/5] Add function number checks --- packages/vm/src/compatibility.rs | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/packages/vm/src/compatibility.rs b/packages/vm/src/compatibility.rs index dfbbb606a..22aa6ec29 100644 --- a/packages/vm/src/compatibility.rs +++ b/packages/vm/src/compatibility.rs @@ -77,6 +77,12 @@ const TABLE_SIZE_LIMIT: u32 = 2500; // entries /// when a user accidentally includes wasm-bindgen, they get a bunch of unsupported imports. const MAX_IMPORTS: usize = 100; +const MAX_FUNCTIONS: usize = 10000; + +const MAX_FUNCTION_PARAMS: usize = 50; + +const MAX_FUNCTION_RESULTS: usize = 1; + /// Checks if the data is valid wasm and compatibility with the CosmWasm API (imports and exports) pub fn check_wasm(wasm_code: &[u8], available_capabilities: &HashSet) -> VmResult<()> { let module = ParsedWasm::parse(wasm_code)?; @@ -87,6 +93,7 @@ pub fn check_wasm(wasm_code: &[u8], available_capabilities: &HashSet) -> check_wasm_exports(&module)?; check_wasm_imports(&module, SUPPORTED_IMPORTS)?; check_wasm_capabilities(&module, available_capabilities)?; + check_wasm_functions(&module)?; Ok(()) } @@ -234,6 +241,25 @@ fn check_wasm_capabilities( Ok(()) } +fn check_wasm_functions(module: &ParsedWasm) -> VmResult<()> { + if module.function_count > MAX_FUNCTIONS { + return Err(VmError::static_validation_err(format!( + "Wasm contract contains more than {MAX_FUNCTIONS} functions" + ))); + } + if module.max_func_params > MAX_FUNCTION_PARAMS { + return Err(VmError::static_validation_err(format!( + "Wasm contract contains function with more than {MAX_FUNCTION_PARAMS} parameters" + ))); + } + if module.max_func_results > MAX_FUNCTION_RESULTS { + return Err(VmError::static_validation_err(format!( + "Wasm contract contains function with more than {MAX_FUNCTION_RESULTS} results" + ))); + } + Ok(()) +} + #[cfg(test)] mod tests { use super::*; From 5b76fc41835079b21c30428c041de8fe170e386c Mon Sep 17 00:00:00 2001 From: Christoph Otter Date: Mon, 18 Dec 2023 18:12:00 +0100 Subject: [PATCH 4/5] Catch panic --- packages/vm/src/modules/file_system_cache.rs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/vm/src/modules/file_system_cache.rs b/packages/vm/src/modules/file_system_cache.rs index 60d8ddaf5..9743c72c9 100644 --- a/packages/vm/src/modules/file_system_cache.rs +++ b/packages/vm/src/modules/file_system_cache.rs @@ -1,6 +1,7 @@ use std::fs; use std::hash::Hash; use std::io; +use std::panic::catch_unwind; use std::path::{Path, PathBuf}; use thiserror::Error; @@ -166,9 +167,12 @@ impl FileSystemCache { .map_err(|_e| VmError::cache_err("Error creating modules directory"))?; let path = self.module_file(checksum); - module - .serialize_to_file(&path) - .map_err(|e| VmError::cache_err(format!("Error writing module to disk: {e}")))?; + catch_unwind(|| { + module + .serialize_to_file(&path) + .map_err(|e| VmError::cache_err(format!("Error writing module to disk: {e}"))) + }) + .map_err(|_| VmError::cache_err("Could not write module to disk"))??; let module_size = module_size(&path)?; Ok(module_size) } From e2ad21352164dd4802ecf24dbe0e8f3523de5643 Mon Sep 17 00:00:00 2001 From: Christoph Otter Date: Tue, 9 Jan 2024 13:25:02 +0100 Subject: [PATCH 5/5] Set version: 1.5.1 --- CHANGELOG.md | 9 ++++++++- Cargo.lock | 16 ++++++++-------- contracts/burner/Cargo.lock | 12 ++++++------ contracts/crypto-verify/Cargo.lock | 12 ++++++------ contracts/cyberpunk/Cargo.lock | 12 ++++++------ contracts/floaty/Cargo.lock | 12 ++++++------ contracts/hackatom/Cargo.lock | 12 ++++++------ contracts/ibc-reflect-send/Cargo.lock | 12 ++++++------ contracts/ibc-reflect/Cargo.lock | 12 ++++++------ contracts/queue/Cargo.lock | 12 ++++++------ contracts/reflect/Cargo.lock | 12 ++++++------ contracts/staking/Cargo.lock | 12 ++++++------ contracts/virus/Cargo.lock | 12 ++++++------ packages/check/Cargo.toml | 6 +++--- packages/crypto/Cargo.toml | 2 +- packages/derive/Cargo.toml | 2 +- packages/go-gen/Cargo.toml | 4 ++-- packages/schema-derive/Cargo.toml | 2 +- packages/schema/Cargo.toml | 6 +++--- packages/std/Cargo.toml | 6 +++--- packages/storage/Cargo.toml | 4 ++-- packages/vm/Cargo.toml | 6 +++--- 22 files changed, 101 insertions(+), 94 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c26f86007..983981043 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,12 @@ and this project adheres to ## [Unreleased] +## [1.5.1] - 2024-01-10 + +### Fixed + +- cosmwasm-vm: Fix CWA-2023-004. + ### Added - cosmwasm-vm: Add constructor `CacheOptions::new` @@ -597,7 +603,8 @@ and this project adheres to The CHANGELOG for versions before 1.0.0 was moved to [CHANGELOG-pre1.0.0.md](./CHANGELOG-pre1.0.0.md). -[unreleased]: https://github.com/CosmWasm/cosmwasm/compare/v1.5.0...HEAD +[unreleased]: https://github.com/CosmWasm/cosmwasm/compare/v1.5.1...HEAD +[1.5.1]: https://github.com/CosmWasm/cosmwasm/compare/v1.5.0...v1.5.1 [1.5.0]: https://github.com/CosmWasm/cosmwasm/compare/v1.4.1...v1.5.0 [1.4.1]: https://github.com/CosmWasm/cosmwasm/compare/v1.4.0...v1.4.1 [1.4.0]: https://github.com/CosmWasm/cosmwasm/compare/v1.3.3...v1.4.0 diff --git a/Cargo.lock b/Cargo.lock index 4b5a1f6cd..eced470a9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -427,7 +427,7 @@ dependencies = [ [[package]] name = "cosmwasm-check" -version = "1.5.0" +version = "1.5.1" dependencies = [ "anyhow", "assert_cmd", @@ -440,7 +440,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "criterion", "digest 0.10.6", @@ -459,7 +459,7 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-std", "syn 1.0.109", @@ -467,7 +467,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "anyhow", "cosmwasm-schema-derive", @@ -482,7 +482,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -491,7 +491,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -516,7 +516,7 @@ dependencies = [ [[package]] name = "cosmwasm-storage" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-std", "serde", @@ -524,7 +524,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/burner/Cargo.lock b/contracts/burner/Cargo.lock index 059d31c64..cdb28e54e 100644 --- a/contracts/burner/Cargo.lock +++ b/contracts/burner/Cargo.lock @@ -199,7 +199,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -211,14 +211,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -229,7 +229,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -238,7 +238,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -258,7 +258,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/crypto-verify/Cargo.lock b/contracts/crypto-verify/Cargo.lock index 506d42a23..56d147cf3 100644 --- a/contracts/crypto-verify/Cargo.lock +++ b/contracts/crypto-verify/Cargo.lock @@ -188,7 +188,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -200,14 +200,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -227,7 +227,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -247,7 +247,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/cyberpunk/Cargo.lock b/contracts/cyberpunk/Cargo.lock index b14ddf9a7..fe1de27bb 100644 --- a/contracts/cyberpunk/Cargo.lock +++ b/contracts/cyberpunk/Cargo.lock @@ -223,7 +223,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -235,14 +235,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -253,7 +253,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -262,7 +262,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64 0.21.2", "bech32", @@ -282,7 +282,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/floaty/Cargo.lock b/contracts/floaty/Cargo.lock index 03ee23986..d4c5ae46b 100644 --- a/contracts/floaty/Cargo.lock +++ b/contracts/floaty/Cargo.lock @@ -188,7 +188,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -200,14 +200,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -227,7 +227,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -247,7 +247,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/hackatom/Cargo.lock b/contracts/hackatom/Cargo.lock index 8fa0ef8fd..ffc122e85 100644 --- a/contracts/hackatom/Cargo.lock +++ b/contracts/hackatom/Cargo.lock @@ -188,7 +188,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -200,14 +200,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -227,7 +227,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -247,7 +247,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/ibc-reflect-send/Cargo.lock b/contracts/ibc-reflect-send/Cargo.lock index b0ba96034..eb075f639 100644 --- a/contracts/ibc-reflect-send/Cargo.lock +++ b/contracts/ibc-reflect-send/Cargo.lock @@ -188,7 +188,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -200,14 +200,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -227,7 +227,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -247,7 +247,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/ibc-reflect/Cargo.lock b/contracts/ibc-reflect/Cargo.lock index 155dd64da..aa3328c5c 100644 --- a/contracts/ibc-reflect/Cargo.lock +++ b/contracts/ibc-reflect/Cargo.lock @@ -188,7 +188,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -200,14 +200,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -227,7 +227,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -247,7 +247,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/queue/Cargo.lock b/contracts/queue/Cargo.lock index 21c40a3ce..41418964d 100644 --- a/contracts/queue/Cargo.lock +++ b/contracts/queue/Cargo.lock @@ -188,7 +188,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -200,14 +200,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -227,7 +227,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -247,7 +247,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/reflect/Cargo.lock b/contracts/reflect/Cargo.lock index 883d4e958..e68801b73 100644 --- a/contracts/reflect/Cargo.lock +++ b/contracts/reflect/Cargo.lock @@ -188,7 +188,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -200,14 +200,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -227,7 +227,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -247,7 +247,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/staking/Cargo.lock b/contracts/staking/Cargo.lock index 5560f1051..217f2ac46 100644 --- a/contracts/staking/Cargo.lock +++ b/contracts/staking/Cargo.lock @@ -188,7 +188,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -200,14 +200,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -227,7 +227,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -247,7 +247,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/contracts/virus/Cargo.lock b/contracts/virus/Cargo.lock index 7ea3b2995..bf3911d40 100644 --- a/contracts/virus/Cargo.lock +++ b/contracts/virus/Cargo.lock @@ -188,7 +188,7 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" dependencies = [ "digest 0.10.7", "ecdsa", @@ -200,14 +200,14 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" dependencies = [ "proc-macro2", "quote", @@ -227,7 +227,7 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" dependencies = [ "base64", "bech32", @@ -247,7 +247,7 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" dependencies = [ "bitflags", "bytecheck", diff --git a/packages/check/Cargo.toml b/packages/check/Cargo.toml index bd5f45b24..e440d86b6 100644 --- a/packages/check/Cargo.toml +++ b/packages/check/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmwasm-check" -version = "1.5.0" +version = "1.5.1" authors = ["Mauro Lacy "] edition = "2021" description = "A CLI tool for verifying CosmWasm smart contracts" @@ -11,8 +11,8 @@ license = "Apache-2.0" anyhow = "1.0.57" clap = "4" colored = "2" -cosmwasm-vm = { path = "../vm", version = "=1.5.0" } -cosmwasm-std = { path = "../std", version = "=1.5.0" } +cosmwasm-vm = { path = "../vm", version = "=1.5.1" } +cosmwasm-std = { path = "../std", version = "=1.5.1" } [dev-dependencies] assert_cmd = "2.0.12" diff --git a/packages/crypto/Cargo.toml b/packages/crypto/Cargo.toml index 689afb02a..b1d176128 100644 --- a/packages/crypto/Cargo.toml +++ b/packages/crypto/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmwasm-crypto" -version = "1.5.0" +version = "1.5.1" authors = ["Mauro Lacy "] edition = "2021" description = "Crypto bindings for cosmwasm contracts" diff --git a/packages/derive/Cargo.toml b/packages/derive/Cargo.toml index 98656a5bf..b0017e363 100644 --- a/packages/derive/Cargo.toml +++ b/packages/derive/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmwasm-derive" -version = "1.5.0" +version = "1.5.1" authors = ["Simon Warta "] edition = "2021" description = "A package for auto-generated code used for CosmWasm contract development. This is shipped as part of cosmwasm-std. Do not use directly." diff --git a/packages/go-gen/Cargo.toml b/packages/go-gen/Cargo.toml index 12035ed5a..88ad9c8b0 100644 --- a/packages/go-gen/Cargo.toml +++ b/packages/go-gen/Cargo.toml @@ -9,8 +9,8 @@ publish = false [dependencies] schemars = "0.8.3" -cosmwasm-std = { path = "../std", version = "1.5.0", features = ["cosmwasm_1_4", "staking", "stargate", "ibc3"] } -cosmwasm-schema = { path = "../schema", version = "1.5.0" } +cosmwasm-std = { path = "../std", version = "1.5.1", features = ["cosmwasm_1_4", "staking", "stargate", "ibc3"] } +cosmwasm-schema = { path = "../schema", version = "1.5.1" } anyhow = "1" Inflector = "0.11.4" indenter = "0.3.3" diff --git a/packages/schema-derive/Cargo.toml b/packages/schema-derive/Cargo.toml index c53a9f9c9..a0bf393ab 100644 --- a/packages/schema-derive/Cargo.toml +++ b/packages/schema-derive/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmwasm-schema-derive" -version = "1.5.0" +version = "1.5.1" authors = ["Tomasz Kurcz "] edition = "2021" description = "Derive macros for cosmwasm-schema" diff --git a/packages/schema/Cargo.toml b/packages/schema/Cargo.toml index 02fafcaba..dddf2a3cb 100644 --- a/packages/schema/Cargo.toml +++ b/packages/schema/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmwasm-schema" -version = "1.5.0" +version = "1.5.1" authors = ["Simon Warta ", "Ethan Frey "] edition = "2021" description = "A dev-dependency for CosmWasm contracts to generate JSON Schema files." @@ -8,7 +8,7 @@ repository = "https://github.com/CosmWasm/cosmwasm/tree/main/packages/schema" license = "Apache-2.0" [dependencies] -cosmwasm-schema-derive = { version = "=1.5.0", path = "../schema-derive" } +cosmwasm-schema-derive = { version = "=1.5.1", path = "../schema-derive" } schemars = "0.8.3" serde = "1.0" serde_json = "1.0.40" @@ -16,6 +16,6 @@ thiserror = "1.0.26" [dev-dependencies] anyhow = "1.0.57" -cosmwasm-std = { version = "1.5.0", path = "../std" } +cosmwasm-std = { version = "1.5.1", path = "../std" } semver = "1" tempfile = "3" diff --git a/packages/std/Cargo.toml b/packages/std/Cargo.toml index aa3f92219..116c3fd6e 100644 --- a/packages/std/Cargo.toml +++ b/packages/std/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmwasm-std" -version = "1.5.0" +version = "1.5.1" authors = ["Ethan Frey "] edition = "2021" description = "Standard library for Wasm based smart contracts on Cosmos blockchains" @@ -51,7 +51,7 @@ cosmwasm_1_4 = ["cosmwasm_1_3"] [dependencies] base64 = "0.21.0" -cosmwasm-derive = { path = "../derive", version = "1.5.0" } +cosmwasm-derive = { path = "../derive", version = "1.5.1" } derivative = "2" forward_ref = "1" hex = "0.4" @@ -68,7 +68,7 @@ static_assertions = "1.1.0" [target.'cfg(not(target_arch = "wasm32"))'.dependencies] bech32 = "0.9.1" -cosmwasm-crypto = { path = "../crypto", version = "1.5.0" } +cosmwasm-crypto = { path = "../crypto", version = "1.5.1" } [dev-dependencies] cosmwasm-schema = { path = "../schema" } diff --git a/packages/storage/Cargo.toml b/packages/storage/Cargo.toml index 5c38f021d..94033ced6 100644 --- a/packages/storage/Cargo.toml +++ b/packages/storage/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmwasm-storage" -version = "1.5.0" +version = "1.5.1" authors = ["Ethan Frey "] edition = "2021" description = "CosmWasm library with useful helpers for Storage patterns" @@ -16,5 +16,5 @@ iterator = ["cosmwasm-std/iterator"] [dependencies] # Uses the path when built locally; uses the given version from crates.io when published -cosmwasm-std = { path = "../std", version = "1.5.0", default-features = false } +cosmwasm-std = { path = "../std", version = "1.5.1", default-features = false } serde = { version = "1.0.103", default-features = false, features = ["derive", "alloc"] } diff --git a/packages/vm/Cargo.toml b/packages/vm/Cargo.toml index 8eeba737e..885d27d73 100644 --- a/packages/vm/Cargo.toml +++ b/packages/vm/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cosmwasm-vm" -version = "1.5.0" +version = "1.5.1" authors = ["Ethan Frey "] edition = "2021" description = "VM bindings to run cosmwams contracts" @@ -39,8 +39,8 @@ bytes = "1.4.0" # need a higher version than the one required by Wasmer for the clru = "0.6.1" crc32fast = "1.3.2" # Uses the path when built locally; uses the given version from crates.io when published -cosmwasm-std = { path = "../std", version = "1.5.0", default-features = false } -cosmwasm-crypto = { path = "../crypto", version = "1.5.0" } +cosmwasm-std = { path = "../std", version = "1.5.1", default-features = false } +cosmwasm-crypto = { path = "../crypto", version = "1.5.1" } derivative = "2" hex = "0.4" schemars = "0.8.3"