NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #4992 most downloaded on crates.io
Crypto bindings for CosmWasm contracts
Last release today
07 Oct 2026
Release timing varies
gaps range from 8 days to 4 months
Most releases are documented
notes for 49 of the last 60 stable releases
5 versions withdrawn
withdrawn after publishing
6 years old
164 releases · first in 2021
One column per quarter.
This is a pre-release version. Caution DO NOT USE ON PRODUCTION!
This is a pre-release version.
Caution
This is a pre-release version. Caution DO NOT USE ON PRODUCTION!
This is a pre-release version.
Caution
Nothing published for this version
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
Nothing published for this version
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
assert_cmd::cargo_bin which will break on future Cargo versions (#2584)release/v3.0.x (#2674)v3.0.6 (#2673)release/v3.0.x (#2647)release/v3.0.x to main (#2642)from_atomics (#2633)decimal256 (#2632)Decimal256 (#2631)Decimal256::sqrt using ilog10 (#2629)decimal.rs (#2628)decimal.rs (#2626)cosmwasm-check tests in v3.0.x (#2619)assert_cmd code in v3.0.x (#2616)Decimal::sqrt using ilog10 (#2604)The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
Fixes to IBCv2 async acks ([#2646])
Nothing published for this version
Prepared version v3.0.4 ([#2613])
Nothing published for this version
Add benchmarking instructions to README ([#2606])
Int type comments (#2576)cosmwasm repository: Add and fix crate-level documentation for all CosmWasm crates ([#2510])
ed25519-zebra to version =4.0.3 (#2528)cosmwasm-core (#2533)cosmwasm-std: Add missing export for ValidatorMetadata ([#2511])
ValidatorMetadata (#2511)cosmwasm-std: Deprecate abort feature. The panic handler is now always enabled. ([#2337])
From<Uint64> for u{64,128},
From<Uint128> for u128, From<Int64> for i{64,128}, and
From<Int128> for i128 (#2268)Uint128::from_{be,le}_bytes and
Uint64::from_{be,le}_bytes. (#2269)Ibc2Msg and CosmosMsg::Ibc2 variant (#2340,
#2390, #2403)ibc2_port to ContractInfoResponse. (#2390, #2403)ibc2_packet_receive entrypoint (#2403)Entrypoints enum.
(#2438)WriteAcknowledgement to Ibc2Msg - (#2425)ibc2_packet_timeout entrypoint - (#2454)Ibc2PacketTimeoutMsg message - (#2454)cosmwasm_std::testing::Envs, which is an Env factory for
testing environments. It auto-increments block heights and timestamps. It
allows for advanced configurations such as custom address prefixes. (#2442)ibc2_packet_ack endpoint ([#2474])ibc2_packet_ack endpoint ([#2474])Ibc2PacketSendMsg message - (#2477)ibc2_packet_send entrypoint (#2477)WasmQuery::RawRange query to allow querying raw storage
ranges of different contracts. (#2471)transfer field to IbcDestinationCallbackMsg, providing
an easier way to handle an IBC transfer in a destination callback. (#2484)abort feature. The panic handler is now always
enabled. (#2337)ptr::NonNull in the internal
memory repr (#2344)instantiate2_address_impl public and let it take a new
len argument to allow truncating address data as part of the generation
process. (#2155)write_region (#2378)cranelift feature. This was doing nothing since
2.2.0 already. (#2262)from_slice, from_binary,
to_vec and to_binary. (#2156)cosmwasm_vm::testing::* do not require
the contract's message types to implement schemars::JsonSchema anymore. This
makes the use of schemars optional for contracts. (#2201)schemars::JsonSchema requirement from CustomMsg.
(#2201)Int256::new/Int512::new now take an i128 argument instead
of bytes. Use ::from_be_bytes if you need the old behaviour. (#2367)Uint256::new/Uint512::new now take an u128 argument
instead of bytes. Use ::from_be_bytes if you need the old behaviour.
(#2367){Decimal,Decimal256}::raw and
{SignedDecimal,SignedDecimal256}::raw in favour of e.g.
Decimal::new(Uint128::new(value)). (#2399)Uint256::from_u128 and Int256::from_i128 in favour
of ::new. (#2399)MemoryStorage to cosmwasm_std::testing::MockStorage.
(#2237)cosmwast_std::testing::mock_info.
Use cosmwasm_std::testing::message_info instead. (#2393)Coin::amount to Uint256 instead of Uint128.
(#2458)serde-json-wasm with serde_json.
(#2195)GovMsg #[non_exhaustive] for consistency. (#2347)BankQuery::AllBalances and
query_all_balances. (#2433)IbcQuery::ListChannels and
ListChannelsResponse. (#2223)ExternalApi, ExternalQuerier and
ExternalStorage as those are only needed by export implementations in
cosmwasm-std. (#2467)exports feature which needs to be enabled for the
primary cosmwasm_std dependency of a contract.Validator type into Validator and
ValidatorMetadata to allow adding more fields to ValidatorResponse in the
future. (#2501)StdError to be more flexible and less immutable
(#2500)Nothing published for this version
Nothing published for this version
Nothing published for this version
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
Nothing published for this version
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
Prepared version v2.3.2 ([#2612])
Nothing published for this version
Removed technical debt ([#2609])
cosmwasm-std: Deprecate PayPacketFee, PayPacketFeeAsync, IbcFee. IBC fees have been removed from ibc-go in version 10. The mentioned struct and enum f…
DenomMetadata (#2417).PayPacketFee, PayPacketFeeAsync, IbcFee. IBC fees have been removed from ibc-go
in version 10. The mentioned struct and enum fields are deprecated and will be removed in cosmwasm 3.0 (#2431).FeeEnabledChannel and FeeEnabledChannelResponse (#2481).The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
Nothing published for this version
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
The detailed release notes are available in the CHANGELOG.md
Prepared version v2.2.7 ([#2611])
Nothing published for this version
Nothing published for this version
Removed technical debt ([#2608])
Nothing published for this version
Versions yanked because of broken dependencies.
Nothing published for this version
Backport GitHub actions to version 2.2.2 ([#2580]).
cosmwasm-std: Deprecate abort feature. The panic handler is now always enabled ([#2384]).
abort feature. The panic handler is now always enabled (#2384).cosmwasm-std: Implement From for u{64,128}, From for u128, From for i{64,128}, and From for i128 ([#2268])
…for the primary package. This effectively deprecates the usage of the library feature pattern.
from_msgpack, to_msgpack_vec and to_msgpack_binary.
These functions are meant to be used similarly to their JSON counterparts.
MessagePack is a more compact, binary encoding.
(#2118)IbcMsg::{PayPacketFee, PayPacketFeeAsync} and
IbcQuery::FeeEnabledChannel to allow contracts to incentivize IBC packets
using IBC Fees. (#2196)Config that allows to configure the limits for static Wasm
validation. (#2220)--wasm-limits flag to supply configured limits for
static validation. (#2220)migrate_with_info call implementation for the extended
migrate entrypoint function (#2212)migrate_with_info function (#2212)migrate_info: MigrateInfo argument. (#2212)Cache::store_codecosmwasm-std: Binary, HexBinary and Checksum are now encoded as binary
blobs when used together with a "compact" serde encoding. A compact encoding
is an encoding that returns false from
is_human_readable.
This is to make these types more efficient when used together with the new
MessagePack encoding. (#2118)
cosmwasm-std: Let mock_env return a contract address that is valid bech32
and uses the same bech32 prefix as MockApi; Change MOCK_CONTRACT_ADDR
value to match the contract address from mock_env. (#2211)
cosmwasm-vm: Let mock_env return a contract address that is valid bech32 and
uses the same bech32 prefix as MockApi; Change MOCK_CONTRACT_ADDR value to
match the contract address from mock_env. (#2211)
cosmwasm-derive: Automatically detect whether the package is a dependency or
the primary package, only expanding entrypoints for the primary package. This
effectively deprecates the usage of the library feature pattern.
Note: This feature does NOT interact well with workspaces due to a cargo bug. If you have multiple contracts in a workspace, you might still want to use the library feature (#2246)
cosmwasm-std: Deprecate BankQuery::AllBalances and IbcQuery::ListChannels.
Both are inherently problematic to use because the returned entries are
unbounded. (#2247)
cosmwasm-vm: Upgrade Wasmer to 4.3.7; Bump MODULE_SERIALIZATION_VERSION to
"v20". (#2255)
cosmwasm-vm: Effectively remove the cranelift feature. It still exists but
is only a no-op for semver compatibility. It will now unconditionally use the
singlepass compiler. (#2260)
cosmwasm-vm: Automatically derive cache version from function hashes and the Wasmer version (#2250)
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
cosmwasm-vm: Add Cache::store_code
Cache::store_codecosmwasm-vm: Fix CWA-2024-007 and CWA-2024-008.
cosmwasm-vm: Problem with caching related to CWA-2024-004. Please upgrade directly to this version instead of the previous one.
### Fixed - cosmwasm-vm: Fix CWA-2024-004
cosmwasm-std: Make fields of IbcAckCallbackMsg and IbcTimeoutCallbackMsg public. ([#2191])
cosmwasm-std: Deprecate "compact" serialization of Binary, HexBinary, Checksum ([#2125])
Reply deserialization on CosmWasm 1.x chains (#2159)QueryRequest enum to use the default generic parameter Empty (#2165)secp256r1_verify and secp256r1_recover_pubkey imports for
ECDSA signature verification over secp256r1. (#1983, #2057, #2058)TryFrom for their respective
integer representations (#2075)&T + T and &T op &T for Uint64, Uint128,
Uint256 and Uint512; improve panic message for Uint64::add and
Uint512::add (#2092){CosmosMsg,SubMsg,Response}::change_custom to change the
custom message type (#2099)Uint{64,128,256,512}::strict_add and ::strict_sub which
are like the Add/Sub implementations but const. (#2098, #2107)Timestamp::plus_nanos/::minus_nanos use
Uint64::strict_add/::strict_sub and document overflows. (#2098, #2107)QuerierWrapper::query_grpc helper for gRPC queries.
(#2120)migrate_version attribute for migrate entrypoints
(#2124, #2166)AnalyzeReport (#2129, #2166)bls12_381_aggregate_g1, bls12_381_aggregate_g2,
bls12_381_pairing_equality, bls12_381_hash_to_g1, and
bls12_381_hash_to_g2 to enable BLS12-381 curve operations, such as verifying
pairing equalities (#2106)ibc_source_callback and ibc_destination_callback, as well as the
IbcCallbackRequest type. (#2025)TransferMsgBuilder to more easily create an
IbcMsg::Transfer with different kinds of memo values, including IBC
Callbacks memo values. (#2167)IbcMsg::WriteAcknowledgement for async IBC
acknowledgements (#2130)Order (#2174)add_event and add_events functions to process types
implementing Into<Event> (#2044)Cache::analyze function (#2051)syn v2 (#2063)syn v2 (#2063)#[cw_serde] now doesn't add #[serde(deny_unknown_fields)]
to the expanded code anymore (#2080)Uint{64,128,256,512}::isqrt (#2108)Binary, HexBinary,
Checksum (#2125)Nothing published for this version
Nothing published for this version
cosmwasm-vm: Add Cache::store_code
Cache::store_codecosmwasm-vm: Fix CWA-2024-007 and CWA-2024-008.
cosmwasm-vm: Problem with caching related to CWA-2024-004. Please upgrade directly to this version instead of the previous one.
### Fixed - cosmwasm-vm: Fix CWA-2024-004
Your coding agent can read these notes before it upgrades. Set up the MCP server →