Repository: CosmWasm/sylvia
Pull request #258 (2023-11-16 14:26:00)

chore: Update deps

codecov[bot]: ## [Codecov](https://app.codecov.io/gh/CosmWasm/sylvia/pull/258?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CosmWasm) Report
All modified and coverable lines are covered by tests :white_check_mark:
> Comparison is base [(`23f072c`)](https://app.codecov.io/gh/CosmWasm/sylvia/commit/23f072c01787cc3534b2e0f6a2b2f5d9f9c49e3e?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CosmWasm) 86.18% compared to head [(`2ccde82`)](https://app.codecov.io/gh/CosmWasm/sylvia/pull/258?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CosmWasm) 86.18%.


<details><summary>Additional details and impacted files</summary>


```diff
@@           Coverage Diff           @@
##             main     #258   +/-   ##
=======================================
  Coverage   86.18%   86.18%           
=======================================
  Files          25       25           
  Lines        1744     1744           
=======================================
  Hits         1503     1503           
  Misses        241      241           
```



</details>

[:umbrella: View full report in Codecov by Sentry](https://app.codecov.io/gh/CosmWasm/sylvia/pull/258?src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CosmWasm).   
:loudspeaker: Have feedback on the report? [Share it here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=CosmWasm).


Patch:
diff --git a/Cargo.lock b/Cargo.lock
index 6c1603b..a2b7426 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -15,9 +15,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.68"
+version = "1.0.75"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61"
+checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
 
 [[package]]
 name = "autocfg"
@@ -27,15 +27,15 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
 name = "base16ct"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce"
+checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
 
 [[package]]
 name = "base64"
-version = "0.13.1"
+version = "0.21.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
+checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
 
 [[package]]
 name = "base64ct"
@@ -43,6 +43,12 @@ version = "1.5.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "b645a089122eccb6111b4f81cbc1a49f5900ac4666bb93ac027feaecf15607bf"
 
+[[package]]
+name = "bech32"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445"
+
 [[package]]
 name = "block-buffer"
 version = "0.9.0"
@@ -63,9 +69,9 @@ dependencies = [
 
 [[package]]
 name = "bnum"
-version = "0.7.0"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "845141a4fade3f790628b7daaaa298a25b204fb28907eb54febe5142db6ce653"
+checksum = "128a44527fc0d6abf05f9eda748b9027536e12dff93f5acc8449f51583309350"
 
 [[package]]
 name = "byteorder"
@@ -87,9 +93,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 
 [[package]]
 name = "const-oid"
-version = "0.9.1"
+version = "0.9.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cec318a675afcb6a1ea1d4340e2d377e56e47c266f28043ceccbf4412ddfdd3b"
+checksum = "28c122c3980598d243d63d9a704629a2d748d101f278052ff068be5a4423ab6f"
 
 [[package]]
 name = "const_panic"
@@ -108,11 +114,12 @@ dependencies = [
 
 [[package]]
 name = "cosmwasm-crypto"
-version = "1.3.3"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "871ce1d5a4b00ed1741f84b377eec19fadd81a904a227bc1e268d76539d26f5e"
+checksum = "d8bb3c77c3b7ce472056968c745eb501c440fbc07be5004eba02782c35bfbbe3"
 dependencies = [
- "digest 0.10.6",
+ "digest 0.10.7",
+ "ecdsa",
  "ed25519-zebra",
  "k256",
  "rand_core 0.6.4",
@@ -121,18 +128,18 @@ dependencies = [
 
 [[package]]
 name = "cosmwasm-derive"
-version = "1.3.3"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ce8b44b45a7c8c6d6f770cd0a51458c2445c7c15b6115e1d215fa35c77b305c"
+checksum = "fea73e9162e6efde00018d55ed0061e93a108b5d6ec4548b4f8ce3c706249687"
 dependencies = [
- "syn",
+ "syn 1.0.107",
 ]
 
 [[package]]
 name = "cosmwasm-schema"
-version = "1.2.7"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "230e5d1cefae5331db8934763c81b9c871db6a2cd899056a5694fa71d292c815"
+checksum = "0df41ea55f2946b6b43579659eec048cc2f66e8c8e2e3652fc5e5e476f673856"
 dependencies = [
  "cosmwasm-schema-derive",
  "schemars",
@@ -143,22 +150,23 @@ dependencies = [
 
 [[package]]
 name = "cosmwasm-schema-derive"
-version = "1.2.7"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "43dadf7c23406cb28079d69e6cb922c9c29b9157b0fe887e3b79c783b7d4bcb8"
+checksum = "43609e92ce1b9368aa951b334dd354a2d0dd4d484931a5f83ae10e12a26c8ba9"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.107",
 ]
 
 [[package]]
 name = "cosmwasm-std"
-version = "1.3.3"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da78abcf059181e8cb01e95e5003cf64fe95dde6c72b3fe37e5cabc75cdba32a"
+checksum = "04d6864742e3a7662d024b51a94ea81c9af21db6faea2f9a6d2232bb97c6e53e"
 dependencies = [
  "base64",
+ "bech32",
  "bnum",
  "cosmwasm-crypto",
  "cosmwasm-derive",
@@ -167,8 +175,9 @@ dependencies = [
  "hex",
  "schemars",
  "serde",
- "serde-json-wasm",
- "sha2 0.10.6",
+ "serde-json-wasm 0.5.0",
+ "sha2 0.10.8",
+ "static_assertions",
  "thiserror",
 ]
 
@@ -183,9 +192,9 @@ dependencies = [
 
 [[package]]
 name = "crypto-bigint"
-version = "0.4.9"
+version = "0.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef"
+checksum = "28f85c3514d2a6e64160359b45a3918c3b4178bcbf4ae5d03ab2d02e521c479a"
 dependencies = [
  "generic-array",
  "rand_core 0.6.4",
@@ -218,39 +227,28 @@ dependencies = [
 
 [[package]]
 name = "cw-multi-test"
-version = "0.16.5"
+version = "0.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "127c7bb95853b8e828bdab97065c81cb5ddc20f7339180b61b2300565aaa99d1"
+checksum = "579e2c2f2c0877b839c5cad85e67811074e854a50c1ff3085eb8290b1c27809c"
 dependencies = [
  "anyhow",
  "cosmwasm-std",
- "cw-storage-plus 1.0.1",
+ "cw-storage-plus",
  "cw-utils",
  "derivative",
- "itertools",
- "k256",
+ "itertools 0.11.0",
  "prost",
  "schemars",
  "serde",
+ "sha2 0.10.8",
  "thiserror",
 ]
 
 [[package]]
 name = "cw-storage-plus"
-version = "0.16.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9b6f91c0b94481a3e9ef1ceb183c37d00764f8751e39b45fc09f4d9b970d469"
-dependencies = [
- "cosmwasm-std",
- "schemars",
- "serde",
-]
-
-[[package]]
-name = "cw-storage-plus"
-version = "1.0.1"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "053a5083c258acd68386734f428a5a171b29f7d733151ae83090c6fcc9417ffa"
+checksum = "d5ff29294ee99373e2cd5fd21786a3c0ced99a52fec2ca347d565489c61b723c"
 dependencies = [
  "cosmwasm-std",
  "schemars",
@@ -259,9 +257,9 @@ dependencies = [
 
 [[package]]
 name = "cw-utils"
-version = "1.0.1"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c80e93d1deccb8588db03945016a292c3c631e6325d349ebb35d2db6f4f946f7"
+checksum = "1b9f351a4e4d81ef7c890e44d903f8c0bdcdc00f094fd3a181eaf70c0eec7a3a"
 dependencies = [
  "cosmwasm-schema",
  "cosmwasm-std",
@@ -274,22 +272,23 @@ dependencies = [
 
 [[package]]
 name = "cw2"
-version = "1.0.0"
+version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "03bdf3747540b47bc1bdaf50ba3aa5e4276ab0c2ce73e8b367ebe260cc37ff9c"
+checksum = "9431d14f64f49e41c6ef5561ed11a5391c417d0cb16455dea8cdcb9037a8d197"
 dependencies = [
  "cosmwasm-schema",
  "cosmwasm-std",
- "cw-storage-plus 0.16.0",
+ "cw-storage-plus",
  "schemars",
  "serde",
+ "thiserror",
 ]
 
 [[package]]
 name = "der"
-version = "0.6.1"
+version = "0.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de"
+checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c"
 dependencies = [
  "const-oid",
  "zeroize",
@@ -303,7 +302,7 @@ checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.107",
 ]
 
 [[package]]
@@ -317,11 +316,12 @@ dependencies = [
 
 [[package]]
 name = "digest"
-version = "0.10.6"
+version = "0.10.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f"
+checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
 dependencies = [
  "block-buffer 0.10.3",
+ "const-oid",
  "crypto-common",
  "subtle",
 ]
@@ -334,14 +334,16 @@ checksum = "c9b0705efd4599c15a38151f4721f7bc388306f61084d3bfd50bd07fbca5cb60"
 
 [[package]]
 name = "ecdsa"
-version = "0.14.8"
+version = "0.16.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c"
+checksum = "a4b1e0c257a9e9f25f90ff76d7a68360ed497ee519c8e428d1825ef0000799d4"
 dependencies = [
  "der",
+ "digest 0.10.7",
  "elliptic-curve",
  "rfc6979",
  "signature",
+ "spki",
 ]
 
 [[package]]
@@ -367,14 +369,13 @@ checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"
 
 [[package]]
 name = "elliptic-curve"
-version = "0.12.3"
+version = "0.13.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3"
+checksum = "e9775b22bc152ad86a0cf23f0f348b884b26add12bf741e7ffc4d4ab2ab4d205"
 dependencies = [
  "base16ct",
  "crypto-bigint",
- "der",
- "digest 0.10.6",
+ "digest 0.10.7",
  "ff",
  "generic-array",
  "group",
@@ -387,9 +388,9 @@ dependencies = [
 
 [[package]]
 name = "ff"
-version = "0.12.1"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160"
+checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
 dependencies = [
  "rand_core 0.6.4",
  "subtle",
@@ -409,6 +410,7 @@ checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9"
 dependencies = [
  "typenum",
  "version_check",
+ "zeroize",
 ]
 
 [[package]]
@@ -424,9 +426,9 @@ dependencies = [
 
 [[package]]
 name = "group"
-version = "0.12.1"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7"
+checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
 dependencies = [
  "ff",
  "rand_core 0.6.4",
@@ -454,7 +456,7 @@ version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e"
 dependencies = [
- "digest 0.10.6",
+ "digest 0.10.7",
 ]
 
 [[package]]
@@ -476,6 +478,15 @@ dependencies = [
  "either",
 ]
 
+[[package]]
+name = "itertools"
+version = "0.11.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
+dependencies = [
+ "either",
+]
+
 [[package]]
 name = "itoa"
 version = "1.0.5"
@@ -484,14 +495,16 @@ checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440"
 
 [[package]]
 name = "k256"
-version = "0.11.6"
+version = "0.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72c1e0b51e7ec0a97369623508396067a486bd0cbed95a2659a4b863d28cfc8b"
+checksum = "3f01b677d82ef7a676aa37e099defd83a28e15687112cafdd112d60236b6115b"
 dependencies = [
  "cfg-if",
  "ecdsa",
  "elliptic-curve",
- "sha2 0.10.6",
+ "once_cell",
+ "sha2 0.10.8",
+ "signature",
 ]
 
 [[package]]
@@ -540,9 +553,9 @@ dependencies = [
 
 [[package]]
 name = "once_cell"
-version = "1.16.0"
+version = "1.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860"
+checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
 
 [[package]]
 name = "opaque-debug"
@@ -552,9 +565,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
 
 [[package]]
 name = "pkcs8"
-version = "0.9.0"
+version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba"
+checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
 dependencies = [
  "der",
  "spki",
@@ -579,7 +592,7 @@ dependencies = [
  "proc-macro-error-attr",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.107",
  "version_check",
 ]
 
@@ -596,18 +609,18 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.59"
+version = "1.0.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6aeca18b86b413c660b781aa319e4e2648a3e6f9eadc9b47e9038e6fe9f3451b"
+checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "prost"
-version = "0.9.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001"
+checksum = "f4fdd22f3b9c31b53c060df4a0613a1c7f062d4115a2b984dd15b1858f7e340d"
 dependencies = [
  "bytes",
  "prost-derive",
@@ -615,22 +628,22 @@ dependencies = [
 
 [[package]]
 name = "prost-derive"
-version = "0.9.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9cc1a3263e07e0bf68e96268f37665207b49560d98739662cdfaae215c720fe"
+checksum = "265baba7fabd416cf5078179f7d2cbeca4ce7a9041111900675ea7c4cb8a4c32"
 dependencies = [
  "anyhow",
- "itertools",
+ "itertools 0.10.5",
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.39",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.28"
+version = "1.0.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488"
+checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
 dependencies = [
  "proc-macro2",
 ]
@@ -652,13 +665,12 @@ dependencies = [
 
 [[package]]
 name = "rfc6979"
-version = "0.3.1"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb"
+checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
 dependencies = [
- "crypto-bigint",
  "hmac",
- "zeroize",
+ "subtle",
 ]
 
 [[package]]
@@ -669,9 +681,9 @@ checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde"
 
 [[package]]
 name = "schemars"
-version = "0.8.11"
+version = "0.8.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a5fb6c61f29e723026dc8e923d94c694313212abbecbbe5f55a7748eec5b307"
+checksum = "45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29"
 dependencies = [
  "dyn-clone",
  "schemars_derive",
@@ -681,21 +693,21 @@ dependencies = [
 
 [[package]]
 name = "schemars_derive"
-version = "0.8.11"
+version = "0.8.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f188d036977451159430f3b8dc82ec76364a42b7e289c2b18a9a18f4470058e9"
+checksum = "c767fd6fa65d9ccf9cf026122c1b555f2ef9a4f0cea69da4d7dbc3e258d30967"
 dependencies = [
  "proc-macro2",
  "quote",
  "serde_derive_internals",
- "syn",
+ "syn 1.0.107",
 ]
 
 [[package]]
 name = "sec1"
-version = "0.3.0"
+version = "0.7.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928"
+checksum = "48518a2b5775ba8ca5b46596aae011caa431e6ce7e4a67ead66d92f08884220e"
 dependencies = [
  "base16ct",
  "der",
@@ -713,9 +725,9 @@ checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a"
 
 [[package]]
 name = "serde"
-version = "1.0.152"
+version = "1.0.192"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
+checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001"
 dependencies = [
  "serde_derive",
 ]
@@ -738,15 +750,24 @@ dependencies = [
  "serde",
 ]
 
+[[package]]
+name = "serde-json-wasm"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "83c37d03f3b0f6b5f77c11af1e7c772de1c9af83e50bef7bb6069601900ba67b"
+dependencies = [
+ "serde",
+]
+
 [[package]]
 name = "serde_derive"
-version = "1.0.152"
+version = "1.0.192"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
+checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.39",
 ]
 
 [[package]]
@@ -757,7 +778,7 @@ checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.107",
 ]
 
 [[package]]
@@ -786,35 +807,41 @@ dependencies = [
 
 [[package]]
 name = "sha2"
-version = "0.10.6"
+version = "0.10.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
+checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
 dependencies = [
  "cfg-if",
  "cpufeatures",
- "digest 0.10.6",
+ "digest 0.10.7",
 ]
 
 [[package]]
 name = "signature"
-version = "1.6.4"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c"
+checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500"
 dependencies = [
- "digest 0.10.6",
+ "digest 0.10.7",
  "rand_core 0.6.4",
 ]
 
 [[package]]
 name = "spki"
-version = "0.6.0"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b"
+checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a"
 dependencies = [
  "base64ct",
  "der",
 ]
 
+[[package]]
+name = "static_assertions"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
+
 [[package]]
 name = "subtle"
 version = "2.4.1"
@@ -829,13 +856,13 @@ dependencies = [
  "cosmwasm-schema",
  "cosmwasm-std",
  "cw-multi-test",
- "cw-storage-plus 1.0.1",
+ "cw-storage-plus",
  "derivative",
  "konst",
  "schemars",
  "serde",
  "serde-cw-value",
- "serde-json-wasm",
+ "serde-json-wasm 1.0.0",
  "sylvia-derive",
  "thiserror",
 ]
@@ -850,7 +877,7 @@ dependencies = [
  "proc-macro2",
  "quote",
  "sylvia-runtime-macros",
- "syn",
+ "syn 1.0.107",
 ]
 
 [[package]]
@@ -861,7 +888,7 @@ checksum = "220853b6e9134826eab438ebadca5e8943a10ea9f45209e29edf50e725ce7267"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 1.0.107",
 ]
 
 [[package]]
@@ -875,24 +902,35 @@ dependencies = [
  "unicode-ident",
 ]
 
+[[package]]
+name = "syn"
+version = "2.0.39"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
 [[package]]
 name = "thiserror"
-version = "1.0.38"
+version = "1.0.50"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0"
+checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.38"
+version = "1.0.50"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f"
+checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn",
+ "syn 2.0.39",
 ]
 
 [[package]]
diff --git a/README.md b/README.md
index 963706a..7e0abad 100644
--- a/README.md
+++ b/README.md
@@ -498,13 +498,13 @@ Going through the doc, you will see that all messages are generated in their str
 modules. To send messages to the contract, we can just use them:
 
 ```rust
-use sylvia::cw_std::{WasmMsg, to_binary};
+use sylvia::cw_std::{WasmMsg, to_json_binary};
 
 fn some_handler(my_contract_addr: String) -> StdResult<Response> {
     let msg = my_contract_crate::ExecMsg::Increment {};
     let msg = WasmMsg::ExecMsg {
         contract_addr: my_contract_addr,
-        msg: to_binary(&msg)?,
+        msg: to_json_binary(&msg)?,
         funds: vec![],
     }
 
diff --git a/examples/Cargo.lock b/examples/Cargo.lock
index 696bb27..01b22e1 100644
--- a/examples/Cargo.lock
+++ b/examples/Cargo.lock
@@ -15,9 +15,9 @@ dependencies = [
 
 [[package]]
 name = "anyhow"
-version = "1.0.71"
+version = "1.0.75"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8"
+checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6"
 
 [[package]]
 name = "assert_matches"
@@ -33,15 +33,15 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 
 [[package]]
 name = "base16ct"
-version = "0.1.1"
+version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce"
+checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf"
 
 [[package]]
 name = "base64"
-version = "0.13.1"
+version = "0.21.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
+checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9"
 
 [[package]]
 name = "base64ct"
@@ -49,6 +49,12 @@ version = "1.6.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b"
 
+[[package]]
+name = "bech32"
+version = "0.9.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445"
+
 [[package]]
 name = "block-buffer"
 version = "0.9.0"
@@ -69,15 +75,15 @@ dependencies = [
 
 [[package]]
 name = "bnum"
-version = "0.7.0"
+version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "845141a4fade3f790628b7daaaa298a25b204fb28907eb54febe5142db6ce653"
+checksum = "128a44527fc0d6abf05f9eda748b9027536e12dff93f5acc8449f51583309350"
 
 [[package]]
 name = "bumpalo"
-version = "3.13.0"
+version = "3.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
+checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec"
 
 [[package]]
 name = "byteorder"
@@ -120,11 +126,12 @@ dependencies = [
 
 [[package]]
 name = "cosmwasm-crypto"
-version = "1.3.3"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "871ce1d5a4b00ed1741f84b377eec19fadd81a904a227bc1e268d76539d26f5e"
+checksum = "d8bb3c77c3b7ce472056968c745eb501c440fbc07be5004eba02782c35bfbbe3"
 dependencies = [
  "digest 0.10.7",
+ "ecdsa",
  "ed25519-zebra",
  "k256",
  "rand_core 0.6.4",
@@ -133,18 +140,18 @@ dependencies = [
 
 [[package]]
 name = "cosmwasm-derive"
-version = "1.3.3"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ce8b44b45a7c8c6d6f770cd0a51458c2445c7c15b6115e1d215fa35c77b305c"
+checksum = "fea73e9162e6efde00018d55ed0061e93a108b5d6ec4548b4f8ce3c706249687"
 dependencies = [
  "syn 1.0.109",
 ]
 
 [[package]]
 name = "cosmwasm-schema"
-version = "1.2.6"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "407aca6f1671a08b60db8167f03bb7cb6b2378f0ddd9a030367b66ba33c2fd41"
+checksum = "0df41ea55f2946b6b43579659eec048cc2f66e8c8e2e3652fc5e5e476f673856"
 dependencies = [
  "cosmwasm-schema-derive",
  "schemars",
@@ -155,9 +162,9 @@ dependencies = [
 
 [[package]]
 name = "cosmwasm-schema-derive"
-version = "1.2.6"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6d1e00b8fd27ff923c10303023626358e23a6f9079f8ebec23a8b4b0bfcd4b3"
+checksum = "43609e92ce1b9368aa951b334dd354a2d0dd4d484931a5f83ae10e12a26c8ba9"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -166,11 +173,12 @@ dependencies = [
 
 [[package]]
 name = "cosmwasm-std"
-version = "1.3.3"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da78abcf059181e8cb01e95e5003cf64fe95dde6c72b3fe37e5cabc75cdba32a"
+checksum = "04d6864742e3a7662d024b51a94ea81c9af21db6faea2f9a6d2232bb97c6e53e"
 dependencies = [
  "base64",
+ "bech32",
  "bnum",
  "cosmwasm-crypto",
  "cosmwasm-derive",
@@ -179,8 +187,9 @@ dependencies = [
  "hex",
  "schemars",
  "serde",
- "serde-json-wasm",
- "sha2 0.10.6",
+ "serde-json-wasm 0.5.1",
+ "sha2 0.10.8",
+ "static_assertions",
  "thiserror",
 ]
 
@@ -195,9 +204,9 @@ dependencies = [
 
 [[package]]
 name = "crypto-bigint"
-version = "0.4.9"
+version = "0.5.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef"
+checksum = "28f85c3514d2a6e64160359b45a3918c3b4178bcbf4ae5d03ab2d02e521c479a"
 dependencies = [
  "generic-array",
  "rand_core 0.6.4",
@@ -256,9 +265,9 @@ dependencies = [
 
 [[package]]
 name = "cw-multi-test"
-version = "0.16.5"
+version = "0.18.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "127c7bb95853b8e828bdab97065c81cb5ddc20f7339180b61b2300565aaa99d1"
+checksum = "579e2c2f2c0877b839c5cad85e67811074e854a50c1ff3085eb8290b1c27809c"
 dependencies = [
  "anyhow",
  "cosmwasm-std",
@@ -266,18 +275,18 @@ dependencies = [
  "cw-utils",
  "derivative",
  "itertools",
- "k256",
  "prost",
  "schemars",
  "serde",
+ "sha2 0.10.8",
  "thiserror",
 ]
 
 [[package]]
 name = "cw-storage-plus"
-version = "1.0.1"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "053a5083c258acd68386734f428a5a171b29f7d733151ae83090c6fcc9417ffa"
+checksum = "d5ff29294ee99373e2cd5fd21786a3c0ced99a52fec2ca347d565489c61b723c"
 dependencies = [
  "cosmwasm-std",
  "schemars",
@@ -286,9 +295,9 @@ dependencies = [
 
 [[package]]
 name = "cw-utils"
-version = "1.0.1"
+version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c80e93d1deccb8588db03945016a292c3c631e6325d349ebb35d2db6f4f946f7"
+checksum = "1b9f351a4e4d81ef7c890e44d903f8c0bdcdc00f094fd3a181eaf70c0eec7a3a"
 dependencies = [
  "cosmwasm-schema",
  "cosmwasm-std",
@@ -352,15 +361,16 @@ dependencies = [
 
 [[package]]
 name = "cw2"
-version = "1.0.1"
+version = "1.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fb70cee2cf0b4a8ff7253e6bc6647107905e8eb37208f87d54f67810faa62f8"
+checksum = "9431d14f64f49e41c6ef5561ed11a5391c417d0cb16455dea8cdcb9037a8d197"
 dependencies = [
  "cosmwasm-schema",
  "cosmwasm-std",
  "cw-storage-plus",
  "schemars",
  "serde",
+ "thiserror",
 ]
 
 [[package]]
@@ -436,9 +446,9 @@ dependencies = [
 
 [[package]]
 name = "der"
-version = "0.6.1"
+version = "0.7.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de"
+checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c"
 dependencies = [
  "const-oid",
  "zeroize",
@@ -471,6 +481,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
 dependencies = [
  "block-buffer 0.10.4",
+ "const-oid",
  "crypto-common",
  "subtle",
 ]
@@ -483,14 +494,16 @@ checksum = "68b0cf012f1230e43cd00ebb729c6bb58707ecfa8ad08b52ef3a4ccd2697fc30"
 
 [[package]]
 name = "ecdsa"
-version = "0.14.8"
+version = "0.16.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c"
+checksum = "a4b1e0c257a9e9f25f90ff76d7a68360ed497ee519c8e428d1825ef0000799d4"
 dependencies = [
  "der",
+ "digest 0.10.7",
  "elliptic-curve",
  "rfc6979",
  "signature",
+ "spki",
 ]
 
 [[package]]
@@ -516,13 +529,12 @@ checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
 
 [[package]]
 name = "elliptic-curve"
-version = "0.12.3"
+version = "0.13.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3"
+checksum = "e9775b22bc152ad86a0cf23f0f348b884b26add12bf741e7ffc4d4ab2ab4d205"
 dependencies = [
  "base16ct",
  "crypto-bigint",
- "der",
  "digest 0.10.7",
  "ff",
  "generic-array",
@@ -550,9 +562,9 @@ dependencies = [
 
 [[package]]
 name = "ff"
-version = "0.12.1"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160"
+checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449"
 dependencies = [
  "rand_core 0.6.4",
  "subtle",
@@ -584,6 +596,7 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
 dependencies = [
  "typenum",
  "version_check",
+ "zeroize",
 ]
 
 [[package]]
@@ -622,9 +635,9 @@ dependencies = [
 
 [[package]]
 name = "getrandom"
-version = "0.2.10"
+version = "0.2.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f"
 dependencies = [
  "cfg-if",
  "js-sys",
@@ -635,9 +648,9 @@ dependencies = [
 
 [[package]]
 name = "group"
-version = "0.12.1"
+version = "0.13.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7"
+checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63"
 dependencies = [
  "ff",
  "rand_core 0.6.4",
@@ -680,9 +693,9 @@ dependencies = [
 
 [[package]]
 name = "itertools"
-version = "0.10.5"
+version = "0.11.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473"
+checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57"
 dependencies = [
  "either",
 ]
@@ -695,23 +708,25 @@ checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
 
 [[package]]
 name = "js-sys"
-version = "0.3.63"
+version = "0.3.65"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f37a4a5928311ac501dee68b3c7613a1037d0edb30c8e5427bd832d55d1b790"
+checksum = "54c0c35952f67de54bb584e9fd912b3023117cbafc0a77d8f3dee1fb5f572fe8"
 dependencies = [
  "wasm-bindgen",
 ]
 
 [[package]]
 name = "k256"
-version = "0.11.6"
+version = "0.13.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72c1e0b51e7ec0a97369623508396067a486bd0cbed95a2659a4b863d28cfc8b"
+checksum = "3f01b677d82ef7a676aa37e099defd83a28e15687112cafdd112d60236b6115b"
 dependencies = [
  "cfg-if",
  "ecdsa",
  "elliptic-curve",
- "sha2 0.10.6",
+ "once_cell",
+ "sha2 0.10.8",
+ "signature",
 ]
 
 [[package]]
@@ -743,15 +758,15 @@ checksum = "4e28ab1dc35e09d60c2b8c90d12a9a8d9666c876c10a3739a3196db0103b6043"
 
 [[package]]
 name = "libc"
-version = "0.2.146"
+version = "0.2.150"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b"
+checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c"
 
 [[package]]
 name = "log"
-version = "0.4.19"
+version = "0.4.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4"
+checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
 
 [[package]]
 name = "memchr"
@@ -773,9 +788,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
 
 [[package]]
 name = "pkcs8"
-version = "0.9.0"
+version = "0.10.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba"
+checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7"
 dependencies = [
  "der",
  "spki",
@@ -817,18 +832,18 @@ dependencies = [
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.60"
+version = "1.0.69"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406"
+checksum = "134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da"
 dependencies = [
  "unicode-ident",
 ]
 
 [[package]]
 name = "prost"
-version = "0.9.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001"
+checksum = "f4fdd22f3b9c31b53c060df4a0613a1c7f062d4115a2b984dd15b1858f7e340d"
 dependencies = [
  "bytes",
  "prost-derive",
@@ -836,22 +851,22 @@ dependencies = [
 
 [[package]]
 name = "prost-derive"
-version = "0.9.0"
+version = "0.12.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9cc1a3263e07e0bf68e96268f37665207b49560d98739662cdfaae215c720fe"
+checksum = "265baba7fabd416cf5078179f7d2cbeca4ce7a9041111900675ea7c4cb8a4c32"
 dependencies = [
  "anyhow",
  "itertools",
  "proc-macro2",
  "quote",
- "syn 1.0.109",
+ "syn 2.0.39",
 ]
 
 [[package]]
 name = "quote"
-version = "1.0.28"
+version = "1.0.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488"
+checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
 dependencies = [
  "proc-macro2",
 ]
@@ -873,13 +888,12 @@ dependencies = [
 
 [[package]]
 name = "rfc6979"
-version = "0.3.1"
+version = "0.4.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb"
+checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2"
 dependencies = [
- "crypto-bigint",
  "hmac",
- "zeroize",
+ "subtle",
 ]
 
 [[package]]
@@ -890,9 +904,9 @@ checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041"
 
 [[package]]
 name = "schemars"
-version = "0.8.12"
+version = "0.8.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02c613288622e5f0c3fdc5dbd4db1c5fbe752746b1d1a56a0630b78fd00de44f"
+checksum = "45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29"
 dependencies = [
  "dyn-clone",
  "schemars_derive",
@@ -902,9 +916,9 @@ dependencies = [
 
 [[package]]
 name = "schemars_derive"
-version = "0.8.12"
+version = "0.8.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "109da1e6b197438deb6db99952990c7f959572794b80ff93707d55a232545e7c"
+checksum = "c767fd6fa65d9ccf9cf026122c1b555f2ef9a4f0cea69da4d7dbc3e258d30967"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -914,9 +928,9 @@ dependencies = [
 
 [[package]]
 name = "sec1"
-version = "0.3.0"
+version = "0.7.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928"
+checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc"
 dependencies = [
  "base16ct",
  "der",
@@ -928,15 +942,15 @@ dependencies = [
 
 [[package]]
 name = "semver"
-version = "1.0.17"
+version = "1.0.20"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"
+checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
 
 [[package]]
 name = "serde"
-version = "1.0.164"
+version = "1.0.192"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e8c8cf938e98f769bc164923b06dce91cea1751522f46f8466461af04c9027d"
+checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001"
 dependencies = [
  "serde_derive",
 ]
@@ -959,15 +973,24 @@ dependencies = [
  "serde",
 ]
 
+[[package]]
+name = "serde-json-wasm"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "83c37d03f3b0f6b5f77c11af1e7c772de1c9af83e50bef7bb6069601900ba67b"
+dependencies = [
+ "serde",
+]
+
 [[package]]
 name = "serde_derive"
-version = "1.0.164"
+version = "1.0.192"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68"
+checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.18",
+ "syn 2.0.39",
 ]
 
 [[package]]
@@ -1007,9 +1030,9 @@ dependencies = [
 
 [[package]]
 name = "sha2"
-version = "0.10.6"
+version = "0.10.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
+checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8"
 dependencies = [
  "cfg-if",
  "cpufeatures",
@@ -1018,9 +1041,9 @@ dependencies = [
 
 [[package]]
 name = "signature"
-version = "1.6.4"
+version = "2.1.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c"
+checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500"
 dependencies = [
  "digest 0.10.7",
  "rand_core 0.6.4",
@@ -1028,14 +1051,20 @@ dependencies = [
 
 [[package]]
 name = "spki"
-version = "0.6.0"
+version = "0.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b"
+checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a"
 dependencies = [
  "base64ct",
  "der",
 ]
 
+[[package]]
+name = "static_assertions"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
+
 [[package]]
 name = "subtle"
 version = "2.5.0"
@@ -1055,7 +1084,7 @@ dependencies = [
  "schemars",
  "serde",
  "serde-cw-value",
- "serde-json-wasm",
+ "serde-json-wasm 1.0.0",
  "sylvia-derive",
 ]
 
@@ -1084,9 +1113,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.18"
+version = "2.0.39"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e"
+checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -1095,22 +1124,22 @@ dependencies = [
 
 [[package]]
 name = "thiserror"
-version = "1.0.40"
+version = "1.0.50"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
+checksum = "f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2"
 dependencies = [
  "thiserror-impl",
 ]
 
 [[package]]
 name = "thiserror-impl"
-version = "1.0.40"
+version = "1.0.50"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
+checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.18",
+ "syn 2.0.39",
 ]
 
 [[package]]
@@ -1168,9 +1197,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
 
 [[package]]
 name = "wasm-bindgen"
-version = "0.2.86"
+version = "0.2.88"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5bba0e8cb82ba49ff4e229459ff22a191bbe9a1cb3a341610c9c33efc27ddf73"
+checksum = "7daec296f25a1bae309c0cd5c29c4b260e510e6d813c286b19eaadf409d40fce"
 dependencies = [
  "cfg-if",
  "wasm-bindgen-macro",
@@ -1178,24 +1207,24 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-backend"
-version = "0.2.86"
+version = "0.2.88"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "19b04bc93f9d6bdee709f6bd2118f57dd6679cf1176a1af464fca3ab0d66d8fb"
+checksum = "e397f4664c0e4e428e8313a469aaa58310d302159845980fd23b0f22a847f217"
 dependencies = [
  "bumpalo",
  "log",
  "once_cell",
  "proc-macro2",
  "quote",
- "syn 2.0.18",
+ "syn 2.0.39",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-macro"
-version = "0.2.86"
+version = "0.2.88"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "14d6b024f1a526bb0234f52840389927257beb670610081360e5a03c5df9c258"
+checksum = "5961017b3b08ad5f3fe39f1e79877f8ee7c23c5e5fd5eb80de95abc41f1f16b2"
 dependencies = [
  "quote",
  "wasm-bindgen-macro-support",
@@ -1203,22 +1232,22 @@ dependencies = [
 
 [[package]]
 name = "wasm-bindgen-macro-support"
-version = "0.2.86"
+version = "0.2.88"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e128beba882dd1eb6200e1dc92ae6c5dbaa4311aa7bb211ca035779e5efc39f8"
+checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.18",
+ "syn 2.0.39",
  "wasm-bindgen-backend",
  "wasm-bindgen-shared",
 ]
 
 [[package]]
 name = "wasm-bindgen-shared"
-version = "0.2.86"
+version = "0.2.88"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed9d5b4305409d1fc9482fee2d7f9bcbf24b3972bf59817ef757e23982242a93"
+checksum = "0d046c5d029ba91a1ed14da14dca44b68bf2f124cfbaf741c54151fdb3e0750b"
 
 [[package]]
 name = "whitelist"
diff --git a/examples/Cargo.toml b/examples/Cargo.toml
index 0becc45..5bc2fab 100644
--- a/examples/Cargo.toml
+++ b/examples/Cargo.toml
@@ -24,3 +24,17 @@ resolver = "2"
 [workspace.package]
 version = "0.5.0"
 edition = "2021"
+
+[workspace.dependencies]
+anyhow = "1.0.75"
+cosmwasm-schema = "1.5.0"
+cosmwasm-std = "1.5.0"
+cw-multi-test = "0.18.0"
+cw-storage-plus = "1.2.0"
+cw-utils = "1.0.2"
+cw2 = "1.1.1"
+getrandom = "0.2.11"
+semver = "1.0.20"
+serde = "1.0.192"
+thiserror = "1.0.50"
+assert_matches = "1.5.0"
diff --git a/examples/contracts/custom/Cargo.toml b/examples/contracts/custom/Cargo.toml
index 37b0a58..8945b3f 100644
--- a/examples/contracts/custom/Cargo.toml
+++ b/examples/contracts/custom/Cargo.toml
@@ -17,15 +17,15 @@ mt = ["library", "anyhow", "cw-multi-test"]
 
 [dependencies]
 cw1 = { path = "../../interfaces/cw1" }
-cosmwasm-schema = "1.2"
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cw-storage-plus = "1.0"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-schema = { workspace = true }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cw-storage-plus = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
-cw-multi-test = { version = "0.16", optional = true }
-anyhow = { version = "1.0", optional = true }
+cw-multi-test = { workspace = true, optional = true }
+anyhow = { workspace = true, optional = true }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
 sylvia = { path = "../../../sylvia", features = ["mt"] }
diff --git a/examples/contracts/cw1-subkeys/Cargo.toml b/examples/contracts/cw1-subkeys/Cargo.toml
index 41f8b08..bb433a6 100644
--- a/examples/contracts/cw1-subkeys/Cargo.toml
+++ b/examples/contracts/cw1-subkeys/Cargo.toml
@@ -11,24 +11,24 @@ library = []
 tests = ["library", "cw-multi-test", "anyhow"]
 
 [dependencies]
-anyhow = { version = "1.0.68", optional = true }
-cosmwasm-schema = "1.2"
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cw-multi-test = { version = "0.16.2", optional = true }
-cw-storage-plus = "1.0"
-cw-utils = "1.0"
+anyhow = { workspace = true, optional = true }
+cosmwasm-schema = { workspace = true }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cw-multi-test = { workspace = true, optional = true }
+cw-storage-plus = { workspace = true }
+cw-utils = { workspace = true }
 cw1 = { path = "../../interfaces/cw1" }
 whitelist = { path = "../../interfaces/whitelist" }
 cw1-whitelist = { path = "../cw1-whitelist", features = ["library"] }
-cw2 = "1.0"
-getrandom = { version = "0.2.8", features = ["js"] }
-serde = { version = "1.0.152", features = ["derive"] }
+cw2 = { workspace = true }
+getrandom = { workspace = true, features = ["js"] }
+serde = { workspace = true, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
-thiserror = "1.0.38"
+thiserror = { workspace = true }
 
 [dev-dependencies]
-anyhow = "1.0.68"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
 sylvia = { path = "../../../sylvia", features = ["mt"] }
 cw1-whitelist = { path = "../cw1-whitelist", features = ["library", "mt"] }
 cw1 = { path = "../../interfaces/cw1", features = ["mt"] }
diff --git a/examples/contracts/cw1-whitelist/Cargo.toml b/examples/contracts/cw1-whitelist/Cargo.toml
index 6718fbe..a7878c8 100644
--- a/examples/contracts/cw1-whitelist/Cargo.toml
+++ b/examples/contracts/cw1-whitelist/Cargo.toml
@@ -17,21 +17,21 @@ tests = ["library", "cw-multi-test", "anyhow"]
 mt = ["sylvia/mt", "library"]
 
 [dependencies]
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cosmwasm-schema = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 cw1 = { path = "../../interfaces/cw1" }
 whitelist = { path = "../../interfaces/whitelist" }
-cw-storage-plus = "1.0"
-thiserror = { version = "1.0" }
-cw2 = "1.0"
-cw-multi-test = { version = "0.16", optional = true }
-anyhow = { version = "1.0", optional = true }
-getrandom = { version = "0.2.8", features = ["js"] }
+cw-storage-plus = { workspace = true }
+thiserror = { workspace = true }
+cw2 = { workspace = true }
+cw-multi-test = { workspace = true, optional = true }
+anyhow = { workspace = true, optional = true }
+getrandom = { workspace = true, features = ["js"] }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
-assert_matches = "1.5.0"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
+assert_matches = { workspace = true }
 sylvia = { path = "../../../sylvia", features = ["mt"] }
diff --git a/examples/contracts/cw1-whitelist/src/contract.rs b/examples/contracts/cw1-whitelist/src/contract.rs
index 2bf302a..78baf56 100644
--- a/examples/contracts/cw1-whitelist/src/contract.rs
+++ b/examples/contracts/cw1-whitelist/src/contract.rs
@@ -57,7 +57,9 @@ impl Cw1WhitelistContract<'_> {
 mod tests {
     use super::*;
     use cosmwasm_std::testing::{mock_dependencies, mock_env, mock_info};
-    use cosmwasm_std::{coin, coins, to_binary, BankMsg, CosmosMsg, StakingMsg, SubMsg, WasmMsg};
+    use cosmwasm_std::{
+        coin, coins, to_json_binary, BankMsg, CosmosMsg, StakingMsg, SubMsg, WasmMsg,
+    };
     use cw1::Cw1;
     use whitelist::responses::AdminListResponse;
     use whitelist::Whitelist;
@@ -190,7 +192,7 @@ mod tests {
             .into(),
             WasmMsg::Execute {
                 contract_addr: "some contract".into(),
-                msg: to_binary(&freeze).unwrap(),
+                msg: to_json_binary(&freeze).unwrap(),
                 funds: vec![],
             }
             .into(),
@@ -288,22 +290,22 @@ mod tests {
     }
 
     mod msgs {
-        use cosmwasm_std::{from_binary, from_slice, to_binary, BankMsg};
+        use cosmwasm_std::{from_json, to_json_binary, BankMsg};
 
         use crate::contract::sv::{ContractExecMsg, ContractQueryMsg};
 
         #[test]
         fn freeze() {
             let original = whitelist::sv::ExecMsg::Freeze {};
-            let serialized = to_binary(&original).unwrap();
-            let deserialized = from_binary(&serialized).unwrap();
+            let serialized = to_json_binary(&original).unwrap();
+            let deserialized = from_json(serialized).unwrap();
 
             assert_eq!(ContractExecMsg::Whitelist(original), deserialized);
 
             let json = br#"{
                 "freeze": {}
             }"#;
-            let deserialized = from_slice(json).unwrap();
+            let deserialized = from_json(json).unwrap();
 
             assert_eq!(
                 ContractExecMsg::Whitelist(whitelist::sv::ExecMsg::Freeze {}),
@@ -316,8 +318,8 @@ mod tests {
             let original = whitelist::sv::ExecMsg::UpdateAdmins {
                 admins: vec!["admin1".to_owned(), "admin2".to_owned()],
             };
-            let serialized = to_binary(&original).unwrap();
-            let deserialized = from_binary(&serialized).unwrap();
+            let serialized = to_json_binary(&original).unwrap();
+            let deserialized = from_json(serialized).unwrap();
 
             assert_eq!(ContractExecMsg::Whitelist(original), deserialized);
 
@@ -326,7 +328,7 @@ mod tests {
                     "admins": ["admin1", "admin3"]
                 }
             }"#;
-            let deserialized = from_slice(json).unwrap();
+            let deserialized = from_json(json).unwrap();
 
             assert_eq!(
                 ContractExecMsg::Whitelist(whitelist::sv::ExecMsg::UpdateAdmins {
@@ -339,15 +341,15 @@ mod tests {
         #[test]
         fn admin_list() {
             let original = whitelist::sv::QueryMsg::AdminList {};
-            let serialized = to_binary(&original).unwrap();
-            let deserialized = from_binary(&serialized).unwrap();
+            let serialized = to_json_binary(&original).unwrap();
+            let deserialized = from_json(serialized).unwrap();
 
             assert_eq!(ContractQueryMsg::Whitelist(original), deserialized);
 
             let json = br#"{
                 "admin_list": {}
             }"#;
-            let deserialized = from_slice(json).unwrap();
+            let deserialized = from_json(json).unwrap();
 
             assert_eq!(
                 ContractQueryMsg::Whitelist(whitelist::sv::QueryMsg::AdminList {}),
@@ -364,8 +366,8 @@ mod tests {
                 }
                 .into()],
             };
-            let serialized = to_binary(&original).unwrap();
-            let deserialized = from_binary(&serialized).unwrap();
+            let serialized = to_json_binary(&original).unwrap();
+            let deserialized = from_json(serialized).unwrap();
             assert_eq!(ContractExecMsg::Cw1(original), deserialized);
         }
 
@@ -379,8 +381,8 @@ mod tests {
                 }
                 .into(),
             };
-            let serialized = to_binary(&original).unwrap();
-            let deserialized = from_binary(&serialized).unwrap();
+            let serialized = to_json_binary(&original).unwrap();
+            let deserialized = from_json(serialized).unwrap();
             assert_eq!(ContractQueryMsg::Cw1(original), deserialized);
         }
     }
diff --git a/examples/contracts/cw20-base/Cargo.toml b/examples/contracts/cw20-base/Cargo.toml
index e2f1c58..67a9102 100644
--- a/examples/contracts/cw20-base/Cargo.toml
+++ b/examples/contracts/cw20-base/Cargo.toml
@@ -16,30 +16,30 @@ library = []
 tests = ["library", "cw-multi-test", "anyhow"]
 
 [dependencies]
-anyhow = { version = "1.0", optional = true }
-cosmwasm-schema = "1.2"
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cw-multi-test = { version = "0.16", optional = true }
-cw-storage-plus = "1.0"
-cw-utils = "1.0"
-cw2 = "1.0"
+anyhow = { workspace = true, optional = true }
+cosmwasm-schema = { workspace = true }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cw-multi-test = { workspace = true, optional = true }
+cw-storage-plus = { workspace = true }
+cw-utils = { workspace = true }
+cw2 = { workspace = true }
 cw20-allowances = { path = "../../interfaces/cw20-allowances" }
 cw20-marketing = { path = "../../interfaces/cw20-marketing" }
 cw20-minting = { path = "../../interfaces/cw20-minting" }
-getrandom = { version = "0.2.8", features = ["js"] }
-semver = "1.0"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+getrandom = { workspace = true, features = ["js"] }
+semver = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
-thiserror = { version = "1.0" }
+thiserror = { workspace = true }
 
 [dev-dependencies]
-anyhow = "1.0"
-assert_matches = "1.5.0"
-cw-multi-test = "0.16"
-cw-utils = "1.0"
+anyhow = { workspace = true }
+assert_matches = { workspace = true }
+cw-multi-test = { workspace = true }
+cw-utils = { workspace = true }
 sylvia = { path = "../../../sylvia", features = ["mt"] }
 cw20-allowances = { path = "../../interfaces/cw20-allowances", features = [
-  "mt",
+    "mt",
 ] }
 cw20-marketing = { path = "../../interfaces/cw20-marketing", features = ["mt"] }
 cw20-minting = { path = "../../interfaces/cw20-minting", features = ["mt"] }
diff --git a/examples/contracts/cw20-base/src/responses.rs b/examples/contracts/cw20-base/src/responses.rs
index 3e0ea92..27e726e 100644
--- a/examples/contracts/cw20-base/src/responses.rs
+++ b/examples/contracts/cw20-base/src/responses.rs
@@ -1,5 +1,5 @@
 use cosmwasm_schema::cw_serde;
-use cosmwasm_std::{to_binary, Addr, Binary, CosmosMsg, StdResult, Uint128, WasmMsg};
+use cosmwasm_std::{to_json_binary, Addr, Binary, CosmosMsg, StdResult, Uint128, WasmMsg};
 use std::fmt;
 
 /// Cw20ReceiveMsg should be de/serialized under `Receive()` variant in a ExecuteMsg
@@ -12,14 +12,14 @@ pub struct Cw20ReceiveMsg {
 
 impl Cw20ReceiveMsg {
     /// serializes the message
-    pub fn into_binary(self) -> StdResult<Binary> {
+    pub fn into_json_binary(self) -> StdResult<Binary> {
         let msg = ReceiverExecuteMsg::Receive(self);
-        to_binary(&msg)
+        to_json_binary(&msg)
     }
 
     /// creates a cosmos_msg sending this struct to the named contract
     pub fn into_cosmos_msg<T: Into<String>>(self, contract_addr: T) -> StdResult<CosmosMsg> {
-        let msg = self.into_binary()?;
+        let msg = self.into_json_binary()?;
         let execute = WasmMsg::Execute {
             contract_addr: contract_addr.into(),
             msg,
diff --git a/examples/contracts/entry-points-overriding/Cargo.toml b/examples/contracts/entry-points-overriding/Cargo.toml
index 911bab5..5fb6463 100644
--- a/examples/contracts/entry-points-overriding/Cargo.toml
+++ b/examples/contracts/entry-points-overriding/Cargo.toml
@@ -16,16 +16,16 @@ library = []
 tests = ["library", "cw-multi-test", "anyhow"]
 
 [dependencies]
-anyhow = { version = "1.0", optional = true }
-cosmwasm-schema = "1.2"
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cw-multi-test = { version = "0.16", optional = true }
-cw-storage-plus = "1.0"
-cw-utils = "1.0"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+anyhow = { workspace = true, optional = true }
+cosmwasm-schema = { workspace = true }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cw-multi-test = { workspace = true, optional = true }
+cw-storage-plus = { workspace = true }
+cw-utils = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
 sylvia = { path = "../../../sylvia", features = ["mt"] }
diff --git a/examples/contracts/generic_contract/Cargo.toml b/examples/contracts/generic_contract/Cargo.toml
index af6f57d..64cc740 100644
--- a/examples/contracts/generic_contract/Cargo.toml
+++ b/examples/contracts/generic_contract/Cargo.toml
@@ -16,19 +16,19 @@ library = []
 tests = ["library", "cw-multi-test", "anyhow"]
 
 [dependencies]
-anyhow = { version = "1.0", optional = true }
-cosmwasm-schema = "1.2"
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cw-multi-test = { version = "0.16", optional = true }
-cw-storage-plus = "1.0"
-cw-utils = "1.0"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+anyhow = { workspace = true, optional = true }
+cosmwasm-schema = { workspace = true }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cw-multi-test = { workspace = true, optional = true }
+cw-storage-plus = { workspace = true }
+cw-utils = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 cw1 = { path = "../../interfaces/cw1" }
 generic = { path = "../../interfaces/generic" }
 custom-and-generic = { path = "../../interfaces/custom-and-generic" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
 sylvia = { path = "../../../sylvia", features = ["mt"] }
diff --git a/examples/contracts/generic_iface_on_contract/Cargo.toml b/examples/contracts/generic_iface_on_contract/Cargo.toml
index 99ad5aa..986a10c 100644
--- a/examples/contracts/generic_iface_on_contract/Cargo.toml
+++ b/examples/contracts/generic_iface_on_contract/Cargo.toml
@@ -16,19 +16,19 @@ library = []
 tests = ["library", "cw-multi-test", "anyhow"]
 
 [dependencies]
-anyhow = { version = "1.0", optional = true }
-cosmwasm-schema = "1.2"
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cw-multi-test = { version = "0.16", optional = true }
-cw-storage-plus = "1.0"
-cw-utils = "1.0"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+anyhow = { workspace = true, optional = true }
+cosmwasm-schema = { workspace = true }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cw-multi-test = { workspace = true, optional = true }
+cw-storage-plus = { workspace = true }
+cw-utils = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 cw1 = { path = "../../interfaces/cw1" }
 generic = { path = "../../interfaces/generic" }
 custom-and-generic = { path = "../../interfaces/custom-and-generic" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
 sylvia = { path = "../../../sylvia", features = ["mt"] }
diff --git a/examples/interfaces/custom-and-generic/Cargo.toml b/examples/interfaces/custom-and-generic/Cargo.toml
index c1f38f9..0efd411 100644
--- a/examples/interfaces/custom-and-generic/Cargo.toml
+++ b/examples/interfaces/custom-and-generic/Cargo.toml
@@ -12,11 +12,11 @@ homepage = "https://cosmwasm.com"
 mt = ["sylvia/mt"]
 
 [dependencies]
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cosmwasm-schema = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
diff --git a/examples/interfaces/cw1/Cargo.toml b/examples/interfaces/cw1/Cargo.toml
index 8b8b7ad..6c6e64b 100644
--- a/examples/interfaces/cw1/Cargo.toml
+++ b/examples/interfaces/cw1/Cargo.toml
@@ -12,11 +12,11 @@ homepage = "https://cosmwasm.com"
 mt = ["sylvia/mt"]
 
 [dependencies]
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cosmwasm-schema = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
diff --git a/examples/interfaces/cw1/src/lib.rs b/examples/interfaces/cw1/src/lib.rs
index 46d204b..af8472a 100644
--- a/examples/interfaces/cw1/src/lib.rs
+++ b/examples/interfaces/cw1/src/lib.rs
@@ -34,7 +34,7 @@ pub trait Cw1 {
 
 #[cfg(test)]
 mod tests {
-    use cosmwasm_std::{coins, from_binary, from_slice, to_binary, BankMsg};
+    use cosmwasm_std::{coins, from_json, to_json_binary, BankMsg};
 
     #[test]
     fn execute() {
@@ -46,15 +46,15 @@ mod tests {
             .into()],
         };
 
-        let serialized = to_binary(&original).unwrap();
-        let deserialized = from_binary(&serialized).unwrap();
+        let serialized = to_json_binary(&original).unwrap();
+        let deserialized = from_json(serialized).unwrap();
 
         assert_eq!(original, deserialized);
     }
 
     #[test]
-    fn execute_from_slice() {
-        let deserialized = from_slice(br#"{"execute": { "msgs": [] }}"#).unwrap();
+    fn execute_from_json() {
+        let deserialized = from_json(br#"{"execute": { "msgs": [] }}"#).unwrap();
         assert_eq!(super::sv::ExecMsg::Execute { msgs: vec![] }, deserialized);
     }
 
@@ -69,15 +69,15 @@ mod tests {
             .into(),
         };
 
-        let serialized = to_binary(&original).unwrap();
-        let deserialized = from_binary(&serialized).unwrap();
+        let serialized = to_json_binary(&original).unwrap();
+        let deserialized = from_json(serialized).unwrap();
 
         assert_eq!(original, deserialized);
     }
 
     #[test]
-    fn query_from_slice() {
-        let deserialized = from_slice(
+    fn query_from_json() {
+        let deserialized = from_json(
             br#"{"can_execute": {
                 "sender": "address",
                 "msg": {
diff --git a/examples/interfaces/cw20-allowances/Cargo.toml b/examples/interfaces/cw20-allowances/Cargo.toml
index d169a8f..72dbfd1 100644
--- a/examples/interfaces/cw20-allowances/Cargo.toml
+++ b/examples/interfaces/cw20-allowances/Cargo.toml
@@ -12,12 +12,12 @@ homepage = "https://cosmwasm.com"
 mt = ["sylvia/mt"]
 
 [dependencies]
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cosmwasm-schema = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
-cw-utils = "1.0"
+cw-utils = { workspace = true }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
diff --git a/examples/interfaces/cw20-marketing/Cargo.toml b/examples/interfaces/cw20-marketing/Cargo.toml
index f4613fb..daf5260 100644
--- a/examples/interfaces/cw20-marketing/Cargo.toml
+++ b/examples/interfaces/cw20-marketing/Cargo.toml
@@ -12,11 +12,11 @@ homepage = "https://cosmwasm.com"
 mt = ["sylvia/mt"]
 
 [dependencies]
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cosmwasm-schema = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
diff --git a/examples/interfaces/cw20-minting/Cargo.toml b/examples/interfaces/cw20-minting/Cargo.toml
index ef7abfb..0a77555 100644
--- a/examples/interfaces/cw20-minting/Cargo.toml
+++ b/examples/interfaces/cw20-minting/Cargo.toml
@@ -12,11 +12,11 @@ homepage = "https://cosmwasm.com"
 mt = ["sylvia/mt"]
 
 [dependencies]
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cosmwasm-schema = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
diff --git a/examples/interfaces/cw4/Cargo.toml b/examples/interfaces/cw4/Cargo.toml
index de68361..313f21b 100644
--- a/examples/interfaces/cw4/Cargo.toml
+++ b/examples/interfaces/cw4/Cargo.toml
@@ -12,11 +12,11 @@ homepage = "https://cosmwasm.com"
 mt = ["sylvia/mt"]
 
 [dependencies]
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cosmwasm-schema = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
diff --git a/examples/interfaces/cw4/src/lib.rs b/examples/interfaces/cw4/src/lib.rs
index 0bb2551..795f5b2 100644
--- a/examples/interfaces/cw4/src/lib.rs
+++ b/examples/interfaces/cw4/src/lib.rs
@@ -37,7 +37,7 @@ pub trait Cw4 {
 
 #[cfg(test)]
 mod tests {
-    use cosmwasm_std::{from_binary, from_slice, to_binary};
+    use cosmwasm_std::{from_json, to_json_binary};
 
     use super::sv::*;
 
@@ -47,8 +47,8 @@ mod tests {
             admin: "admin_name".to_owned(),
         };
 
-        let serialized_msg = to_binary(&original_msg).unwrap();
-        let serialized_msg: Cw4ExecMsg = from_binary(&serialized_msg).unwrap();
+        let serialized_msg = to_json_binary(&original_msg).unwrap();
+        let serialized_msg: Cw4ExecMsg = from_json(serialized_msg).unwrap();
 
         assert_eq!(serialized_msg, original_msg);
     }
@@ -57,16 +57,16 @@ mod tests {
     fn query() {
         let original_msg = Cw4QueryMsg::Admin {};
 
-        let serialized_msg = to_binary(&original_msg).unwrap();
-        let serialized_msg: Cw4QueryMsg = from_binary(&serialized_msg).unwrap();
+        let serialized_msg = to_json_binary(&original_msg).unwrap();
+        let serialized_msg: Cw4QueryMsg = from_json(serialized_msg).unwrap();
 
         assert_eq!(serialized_msg, original_msg);
     }
 
     #[test]
-    fn execute_from_slice() {
+    fn execute_from_json() {
         let deserialized: Cw4ExecMsg =
-            from_slice(br#"{"update_admin": {"admin": "admin_name"}}"#).unwrap();
+            from_json(br#"{"update_admin": {"admin": "admin_name"}}"#).unwrap();
         assert_eq!(
             deserialized,
             Cw4ExecMsg::UpdateAdmin {
@@ -76,8 +76,8 @@ mod tests {
     }
 
     #[test]
-    fn query_from_slice() {
-        let deserialized: Cw4QueryMsg = from_slice(br#"{"admin": {}}"#).unwrap();
+    fn query_from_json() {
+        let deserialized: Cw4QueryMsg = from_json(br#"{"admin": {}}"#).unwrap();
         assert_eq!(deserialized, Cw4QueryMsg::Admin {});
     }
 
diff --git a/examples/interfaces/generic/Cargo.toml b/examples/interfaces/generic/Cargo.toml
index c5832b1..04ad4e8 100644
--- a/examples/interfaces/generic/Cargo.toml
+++ b/examples/interfaces/generic/Cargo.toml
@@ -12,11 +12,11 @@ homepage = "https://cosmwasm.com"
 mt = ["sylvia/mt"]
 
 [dependencies]
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cosmwasm-schema = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
diff --git a/examples/interfaces/whitelist/Cargo.toml b/examples/interfaces/whitelist/Cargo.toml
index 5ec641e..ee72c26 100644
--- a/examples/interfaces/whitelist/Cargo.toml
+++ b/examples/interfaces/whitelist/Cargo.toml
@@ -12,11 +12,11 @@ homepage = "https://cosmwasm.com"
 mt = ["sylvia/mt"]
 
 [dependencies]
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
-serde = { version = "1.0", default-features = false, features = ["derive"] }
+cosmwasm-std = { workspace = true, features = ["staking"] }
+cosmwasm-schema = { workspace = true }
+serde = { workspace = true, default-features = false, features = ["derive"] }
 sylvia = { path = "../../../sylvia" }
 
 [dev-dependencies]
-anyhow = "1.0"
-cw-multi-test = "0.16"
+anyhow = { workspace = true }
+cw-multi-test = { workspace = true }
diff --git a/examples/interfaces/whitelist/src/lib.rs b/examples/interfaces/whitelist/src/lib.rs
index 34daafe..5015954 100644
--- a/examples/interfaces/whitelist/src/lib.rs
+++ b/examples/interfaces/whitelist/src/lib.rs
@@ -21,16 +21,16 @@ pub trait Whitelist {
 
 #[cfg(test)]
 mod tests {
-    use cosmwasm_std::{from_binary, from_slice, to_binary};
+    use cosmwasm_std::{from_json, to_json_binary};
 
     use super::*;
 
     #[test]
-    fn exec_from_binary() {
+    fn execs() {
         let original = sv::ExecMsg::Freeze {};
 
-        let serialized = to_binary(&original).unwrap();
-        let deserialized = from_binary(&serialized).unwrap();
+        let serialized = to_json_binary(&original).unwrap();
+        let deserialized = from_json(serialized).unwrap();
 
         assert_eq!(original, deserialized);
 
@@ -38,19 +38,18 @@ mod tests {
             admins: vec!["new_admin".to_owned()],
         };
 
-        let serialized = to_binary(&original).unwrap();
-        let deserialized = from_binary(&serialized).unwrap();
+        let serialized = to_json_binary(&original).unwrap();
+        let deserialized = from_json(serialized).unwrap();
 
         assert_eq!(original, deserialized);
     }
 
     #[test]
-    fn exec_from_slice() {
-        let deserialized = from_slice(br#"{"freeze": { }}"#).unwrap();
+    fn execs_from_json() {
+        let deserialized = from_json(br#"{"freeze": { }}"#).unwrap();
         assert_eq!(sv::ExecMsg::Freeze {}, deserialized);
 
-        let deserialized =
-            from_slice(br#"{"update_admins": { "admins": ["new_admin"] }}"#).unwrap();
+        let deserialized = from_json(br#"{"update_admins": { "admins": ["new_admin"] }}"#).unwrap();
         assert_eq!(
             sv::ExecMsg::UpdateAdmins {
                 admins: vec!["new_admin".to_owned()]
@@ -60,17 +59,17 @@ mod tests {
     }
 
     #[test]
-    fn query_from_binary() {
+    fn query() {
         let original = sv::QueryMsg::AdminList {};
-        let serialized = to_binary(&original).unwrap();
-        let deserialized = from_binary(&serialized).unwrap();
+        let serialized = to_json_binary(&original).unwrap();
+        let deserialized = from_json(serialized).unwrap();
 
         assert_eq!(original, deserialized);
     }
 
     #[test]
-    fn query_from_slice() {
-        let deserialized = from_slice(br#"{"admin_list": {}}"#).unwrap();
+    fn query_from_json() {
+        let deserialized = from_json(br#"{"admin_list": {}}"#).unwrap();
         assert_eq!(sv::QueryMsg::AdminList {}, deserialized);
     }
 }
diff --git a/sylvia-derive/src/message.rs b/sylvia-derive/src/message.rs
index 9a67a37..2ac57d8 100644
--- a/sylvia-derive/src/message.rs
+++ b/sylvia-derive/src/message.rs
@@ -570,7 +570,7 @@ impl<'a> MsgVariant<'a> {
             Query => quote! {
                 #name {
                     #(#fields,)*
-                } => #sylvia ::cw_std::to_binary(&contract.#function_name(Into::into(ctx), #(#args),*)?).map_err(Into::into)
+                } => #sylvia ::cw_std::to_json_binary(&contract.#function_name(Into::into(ctx), #(#args),*)?).map_err(Into::into)
             },
             Instantiate | Migrate | Reply | Sudo => {
                 emit_error!(name.span(), "Instantiation, Reply, Migrate and Sudo messages not supported on traits, they should be defined on contracts directly");
@@ -1012,7 +1012,7 @@ where
         let bracketed_generics = emit_bracketed_generics(used_generics);
 
         quote! {
-            #sylvia ::cw_std::from_slice::< #msg_name #bracketed_generics >(&msg)?
+            #sylvia ::cw_std::from_json::< #msg_name #bracketed_generics >(&msg)?
                 .dispatch(self, ( #values ))
                 .map_err(Into::into)
         }
diff --git a/sylvia-derive/src/parser.rs b/sylvia-derive/src/parser.rs
index 569e9f8..5f80d0a 100644
--- a/sylvia-derive/src/parser.rs
+++ b/sylvia-derive/src/parser.rs
@@ -545,7 +545,7 @@ impl OverrideEntryPoint {
         let values = msg_type.emit_ctx_values();
 
         quote! {
-            #entry_point ( #values .into(), #sylvia ::cw_std::from_slice::< #msg_name >(&msg)?)
+            #entry_point ( #values .into(), #sylvia ::cw_std::from_json::< #msg_name >(&msg)?)
                 .map_err(Into::into)
         }
     }
diff --git a/sylvia/Cargo.toml b/sylvia/Cargo.toml
index 121bb6c..99f23da 100644
--- a/sylvia/Cargo.toml
+++ b/sylvia/Cargo.toml
@@ -17,19 +17,19 @@ staking = ["cosmwasm-std/staking", "cw-multi-test?/staking"]
 
 [dependencies]
 sylvia-derive = { workspace = true }
-cosmwasm-std = { version = "1.3", features = ["staking"] }
-cosmwasm-schema = "1.2"
+cosmwasm-std = { version = "1.5", features = ["staking"] }
+cosmwasm-schema = "1.5"
 schemars = "0.8"
 serde = { version = "1.0", default-features = false, features = ["derive"] }
 serde-cw-value = "0.7.0"
-serde-json-wasm = "0.5.0"
+serde-json-wasm = "1.0.0"
 konst = "0.3"
-cw-multi-test = { version = "0.16.5", optional = true }
+cw-multi-test = { version = "0.18.0", optional = true }
 anyhow = { version = "1.0", optional = true }
 derivative = { version = "2.2.0", optional = true }
 
 [dev-dependencies]
 anyhow = "1.0"
 cw-storage-plus = "1.0.1"
-cw-multi-test = "0.16.5"
+cw-multi-test = "0.18"
 thiserror = "1.0.38"


Test patch:
diff --git a/examples/contracts/custom/src/multitest/custom_module.rs b/examples/contracts/custom/src/multitest/custom_module.rs
index 092fadd..177f168 100644
--- a/examples/contracts/custom/src/multitest/custom_module.rs
+++ b/examples/contracts/custom/src/multitest/custom_module.rs
@@ -1,6 +1,6 @@
 use cosmwasm_schema::schemars::JsonSchema;
 use cosmwasm_std::{
-    to_binary, Addr, Api, Binary, BlockInfo, CustomQuery, Empty, Querier, StdError, StdResult,
+    to_json_binary, Addr, Api, Binary, BlockInfo, CustomQuery, Empty, Querier, StdError, StdResult,
     Storage,
 };
 use cw_multi_test::{AppResponse, CosmosRouter, Module};
@@ -82,7 +82,7 @@ impl Module for CustomModule {
             CounterQuery::Count {} => {
                 let count = self.counter.load(storage)?;
                 let res = CountResponse { count };
-                to_binary(&res).map_err(Into::into)
+                to_json_binary(&res).map_err(Into::into)
             }
         }
     }
diff --git a/examples/contracts/cw1-whitelist/src/multitest.rs b/examples/contracts/cw1-whitelist/src/multitest.rs
index a91713d..8da1063 100644
--- a/examples/contracts/cw1-whitelist/src/multitest.rs
+++ b/examples/contracts/cw1-whitelist/src/multitest.rs
@@ -1,6 +1,6 @@
 #[cfg(test)]
 mod test {
-    use cosmwasm_std::{to_binary, WasmMsg};
+    use cosmwasm_std::{to_json_binary, WasmMsg};
     use whitelist::responses::AdminListResponse;
 
     use crate::contract::sv::multitest_utils::CodeId;
@@ -32,7 +32,7 @@ mod test {
         let freeze = whitelist::sv::ExecMsg::Freeze {};
         let freeze = WasmMsg::Execute {
             contract_addr: second_contract.contract_addr.to_string(),
-            msg: to_binary(&freeze).unwrap(),
+            msg: to_json_binary(&freeze).unwrap(),
             funds: vec![],
         };
 
diff --git a/sylvia/tests/dispatching.rs b/sylvia/tests/dispatching.rs
index 155354c..3e0c096 100644
--- a/sylvia/tests/dispatching.rs
+++ b/sylvia/tests/dispatching.rs
@@ -1,5 +1,5 @@
 use cosmwasm_std::testing::{mock_dependencies, mock_env, mock_info};
-use cosmwasm_std::{from_binary, Addr, Decimal, Response};
+use cosmwasm_std::{from_json, Addr, Decimal, Response};
 use schemars::JsonSchema;
 use serde::{Deserialize, Serialize};
 
@@ -162,14 +162,14 @@ fn dispatch() {
     let resp = interface::sv::QueryMsg::NoArgsQuery {}
         .dispatch(&contract, (deps.as_ref(), env.clone()))
         .unwrap();
-    let _resp: EmptyQueryResponse = from_binary(&resp).unwrap();
+    let _resp: EmptyQueryResponse = from_json(resp).unwrap();
 
     let resp = interface::sv::QueryMsg::ArgumentedQuery {
         user: Addr::unchecked("addr2"),
     }
     .dispatch(&contract, (deps.as_ref(), env))
     .unwrap();
-    let resp: QueryResponse = from_binary(&resp).unwrap();
+    let resp: QueryResponse = from_json(resp).unwrap();
     assert_eq!(
         resp,
         QueryResponse {
diff --git a/sylvia/tests/replies.rs b/sylvia/tests/replies.rs
index 979db3c..50e09dc 100644
--- a/sylvia/tests/replies.rs
+++ b/sylvia/tests/replies.rs
@@ -1,5 +1,5 @@
 use sylvia::cw_std::testing::{mock_dependencies, mock_env};
-use sylvia::cw_std::{from_binary, Reply, SubMsgResponse, SubMsgResult};
+use sylvia::cw_std::{from_json, Reply, SubMsgResponse, SubMsgResult};
 
 #[allow(dead_code)]
 mod noop_contract {
@@ -33,7 +33,7 @@ mod reply_contract {
     use sylvia::types::{ExecCtx, InstantiateCtx, ReplyCtx};
     use sylvia::{contract, entry_points};
 
-    use sylvia::cw_std::{to_binary, Reply, Response, StdResult, SubMsg, WasmMsg};
+    use sylvia::cw_std::{to_json_binary, Reply, Response, StdResult, SubMsg, WasmMsg};
 
     use super::noop_contract;
 
@@ -58,7 +58,7 @@ mod reply_contract {
             let msg = noop_contract::sv::ExecMsg::Noop {};
             let msg = WasmMsg::Execute {
                 contract_addr: noop,
-                msg: to_binary(&msg)?,
+                msg: to_json_binary(&msg)?,
                 funds: vec![],
             };
             let msg = SubMsg::reply_always(msg, 1);
@@ -69,7 +69,7 @@ mod reply_contract {
 
         #[msg(reply)]
         fn reply(&self, _ctx: ReplyCtx, _msg: Reply) -> StdResult<Response> {
-            let resp = Response::new().set_data(to_binary("data")?);
+            let resp = Response::new().set_data(to_json_binary("data")?);
             Ok(resp)
         }
     }
@@ -88,7 +88,7 @@ fn entry_point_generation() {
     let env = mock_env();
 
     let resp = reply_contract::entry_points::reply(deps.as_mut(), env, msg).unwrap();
-    let data: String = from_binary(&resp.data.unwrap()).unwrap();
+    let data: String = from_json(resp.data.unwrap()).unwrap();
 
     assert_eq!(data, "data");
 }
@@ -110,7 +110,7 @@ fn mt_helper_generation() {
         .call(owner)
         .unwrap();
 
-    let data: String = from_binary(&resp.data.unwrap()).unwrap();
+    let data: String = from_json(&resp.data.unwrap()).unwrap();
 
     assert_eq!(data, "data");
 }