v0.31.0 (2023-03-13)
- Upgrade wasmvm to v1.2.1 #1245, see wasmvm v1.2.1
- Fix checksum check for zipped gov store proposals #1232
- Return IBC packet sequence number in the handler plugin #1154
- Add Windows client-side support #1169
- Upgrade Cosmos-SDK to v0.45.14
- Add missing events for admin-related methods #1173
- Disallow storing new codes with ACCESS_TYPE_ONLY_ADDRESS #1144
- Support builds without CGO #1129
- Wasmd does not sort coins when converting from CosmWasm Coins to SDK Coins #1118
- Add InstantiateContract2Proposal #1062
- CLI: Allow using key name for --admin #1039
- More gov proposal simulations #1107
- Remove genesis messages #987
- Update instantiate config command #843
- Upgrade IBC-go to v4.3.0 #1180
- Upgrade ICA to v0.2.6 #1192
- Genesis messages were deprecated before and are removed with this release
- New
cosmwasm_1_2
capability to enable new features:- Support for
gov.MsgVoteWeighted
,wasm.Instantiate2
messages - code info query for contracts
- Support for
- See "State Machine Breaking" changes in IBC-go
- See notes about the "store fix" in Cosmos-sdk
- Wasmd can now be used as a library without CGO
- Wasmd client can now be used on Windows
- This release does not include any state migrations but breaking changes that require a coordinated chain upgrade
v0.30.0 (2022-12-02)
- Provide source, builder and codehash information in store code proposal message#1072
- Add new CLI query/ endpoint to get contracts by creator address #998
- Upgrade to Go v1.19 #1044
- Upgrade to Cosmos-sdk to v0.45.11 /#1096
- Upgrade to IBC v4.2.0 with interchain-accounts v0.2.4 #1088
- Preserve contract history/ created date on genesis import #878
- Authz module integration - more granularity for WasmExecuteMsg authorizations #803
- StoreAndInstantiate gov proposal #785
- Start developer guide for contributors #654
- IBC fee middleware is setup in
app.go
. Please note that it can be enabled with new channels only. A nice read is this article. - Authz for wasm contracts can be granted via
wasmd tx wasm grant
and executed viawasmd tx authz exec
command - Go v1.19 required to prevent a mixed chain setup with older versions. Just to be on the safe side.
- Store code proposal types have new metadata fields added that can help to build client side tooling to verify the wasm contract in the proposal
- The wasmd module version was bumped and a state migration registered.
- See ibc-go migration notes
- See interchain-accounts
MsgRegisterAccount.Version
field. Full diff v0.1.0 to v0.2.4
v0.29.2 (2022-11-08)
- Fixes missing instantiate-anyof-addresses flag declaration for gov /#1084
v0.29.1 (2022-10-14)
- Upgrade to Cosmos-sdk to v45.9 /#1052
v0.29.0 (2022-10-10)
- Add dependencies for protobuf and remove third_party forlder /#1030
- Check wasmvm version on startup #1029
- Allow AccessConfig to use a list of addresses instead of just a single address #945
- Make contract addresses predictable ("deterministic") #942
- Add query for the total supply of a coin #903 (larry0x)
- Upgrade go to v1.18 [#866]CosmWasm#866) (faddat)
- Upgrade to ibc-go v3.3.0 REQUIRES MIGRATION #1016
- Upgrade to cosmos-sdk v0.45.8 #964 (faddat)
- Upgrade wasmvm to v1.1.1 #1012, see wasmvm v1.1.1
- Add documentation how to add x/wasm to a new Cosmos SDK chain #876
- Upgrade keyring / go-keychain dependencies (removes deprecate warning) #957
- Make contract pinning an optional field in StoreCode proposals #972
- Add gRPC query for WASM params #889
- Expose Keepers in app.go? #881
- Remove unused
flagProposalType
flag in gov proposals #849 - Restrict code access config modifications #901
- Prevent migration to a restricted code #900
- Charge gas to unzip wasm code #898
- BaseAccount and pruned vesting account types can be re-used for contracts addresses
- A new MsgInstantiateContract2 was introduced which is an additional value for
message
type events - Store event contains a new attribute with the code checksum now
- New
wasmd tx wasm instantiate2
CLI command for predictable addresses on instantiation - New
cosmwasm_1_1
CosmWasm capability (former "feature") was introduced in cosmwasm/#1356 to support total supply queries - Protobuf files are published to buf.build
- See ibc-go migration notes
v0.28.0 (2022-07-29)
API Breaking
No
Fixed Bugs
- Fix: Make events in reply completely determinisitic by stripping out anything coming from Cosmos SDK (not CosmWasm codebase) #917 (assafmo)
Migration notes:
- Contracts can no longer parse events from any calls except if they call another contract (or instantiate it, migrate it, etc). The main issue here is likely "Custom" queries from a blockchain, which want to send info (eg. how many tokens were swapped). Since those custom bindings are maintained by the chain, they can use the data field to pass any deterministic information back to the contract. We recommend using JSON encoding there with some documented format the contracts can parse out easily.
- For possible non-determinism issues, we also sort all attributes in events. Better safe than sorry.
v0.27.0 (2022-05-19)
API Breaking Yes
Fixed bugs:
- Fix: allow no admin in instantiation through proposal #828 (jhernandezb)
- Fix SudoContractProposal and ExecuteContractProposal #808 (the-frey)
Implemented Enhancements
- Add UpdateInstantiateConfig governance proposal #820 (jhernandezb)
- Upgrade wasmvm to v1.0.0 #844 and #858
- Support state sync #478
- Upgrade to ibc-go v3 #806
- Initial ICA integration #837 (ethanfrey)
- Consolidate MaxWasmSize constraints into a single var #826
- Add AccessConfig to CodeInfo query response #829
- Bump sdk to v0.45.4 #818 (alpe)
- Bump buf docker image to fix proto generation issues #820 (alpe)
- Add MsgStoreCode and MsgInstantiateContract support to simulations #831 (pinosu)
Implemented Enhancements
- Make MaxLabelSize a var not const #822
v0.26.0 (2022-04-21)
Fixed bugs:
- Unpack contract details from genesis #802
Closed issues:
Merged pull requests:
- Disable stargate queries #812
- Gov param change examples #805
- Create link to SECURITY.md in other repo #801
- Tests some event edge cases #799
v0.25.0 (2022-04-06)
API Breaking
Implemented Enhancements
- Fix: close iterators #792
- Use callback pattern for contract state iterator #794
- Bump github.com/stretchr/testify from 1.7.0 to 1.7.1 #787
- Bump github.com/cosmos/ibc-go/v2 from 2.0.3 to 2.2.0 #786
v0.24.0 (2022-03-09)
API Breaking
- Add cosmwasm project prefix to REST query paths #743
- Add support for old contract addresses of length 20 #758
- Update wasmvm to 1.0.0-beta7 (incl wasmer 2.2) #774
Fixed bugs
- Add missing colons in String of some proposals #752
- Replace custom codec with SDK codec (needed for rosetta) #760
- Support
--no-admin
flag on cli for gov instantiation #771
Implemented Enhancements
- Add support for Buf Build #753, #755, #756
- Redact most errors sent to contracts, for better determinism guarantees #765, #775
v0.23.0 (2022-01-28)
Fixed bugs
- Set end block order #736
v0.22.0 (2022-01-20)
Api Breaking:
Implemented Enhancements:
- Use proper SystemError::NoSuchContract on ContractInfo if missing #687
- Benchmark tests flickering: directory not empty #659
- Implement PinCode and UnpinCode proposal client handlers #707 (orkunkl)
- Use replace statements to enforce consistent versioning. #692 (faddat)
- Fixed circleci by removing the golang executor from a docker build
- Go 1.17 provides a much clearer go.mod file #679 (faddat)
- Autopin wasm code uploaded by gov proposal #726 (ethanfrey)
- You must explicitly declare --no-admin on cli instantiate if that is what you want #727 (ethanfrey)
- Add governance proposals for Wasm Execute and Sudo #730 (ethanfrey)
- Remove unused run-as flag from Wasm Migrate proposals #730 (ethanfrey)
- Expose wasm/Keeper.SetParams #732 (ethanfrey)
v0.21.0 (2021-11-17)
Fixed bugs + Api Breaking:
- Prevent infinite gas consumption in simulation queries #670
- Amino JSON representation of inner message in Msg{Instantiate,Migrate,Execute}Contract #642
Implemented Enhancements:
- Bump wasmvm to v1.0.0-beta2 #676
- Add Benchmarks to compare with native modules #635
- Document M1 is not supported #653
- Open read access to sequences #669
- Remove unused flags from command prompt for storing contract #647
- Ran
make format
#649 - Add golangci lint check to circleci jobs \620
- Updated error log statements in initGenesis for easier debugging: #643
- Bump github.com/cosmos/iavl from 0.17.1 to 0.17.2 #673
- Bump github.com/rs/zerolog from 1.25.0 to 1.26.0 #666
v0.20.0 (2021-10-08)
Fixed bugs:
- Add capabilities to begin block #626
Api Breaking:
- Update to wasmvm 1.0.0-soon2 #624
Implemented Enhancements:
- Upgrade Cosmos-sdk v0.42.10 #627 (alpe)
- Add transaction index implemented as counter #601
- Fix inconsistent return of
contractAddress
fromkeeper/init()
? #616 - Query pinned wasm codes #596
- Doc IBC Events #593
- Allow contract Info query from the contract #584
- Revisit reply gas costs for submessages. #450
- Benchmarks for gas pricing #634
- Treat all contracts as pinned for gas costs in reply #630
- Bump github.com/spf13/viper from 1.8.1 to 1.9.0 #615
v0.19.0 (2021-09-15)
Fixed bugs:
Api Breaking:
- Bump Go version to 1.16 #612
Implemented Enhancements:
- Ensure query isolation #611
- Optimize BalanceQuery #609
- Bump wasmvm to v0.16.1 #605
- Bump github.com/rs/zerolog from 1.23.0 to 1.25.0 #603
- Add decorator options #598
- Bump github.com/spf13/cast from 1.4.0 to 1.4.1 #592
v0.18.0 (2021-08-16)
Api Breaking:
- Events documented and refactored #448, #589, #587
- Add organisation to grpc gateway path #578
- Move Proto version from
v1beta1
tov1
for all cosmwasm.wasm.* types #563 - Renamed InitMsg and MigrateMsg fields to Msg. This applies to protobuf Msg and Proposals, as well as REST and CLI #563
- Removed source and builder fields from StoreCode and CodeInfo. They were rarely used. #564
- Changed contract address derivation function. If you hardcoded the first contract addresses anywhere (in scripts?), please update them. #565
Implemented Enhancements:
- Cosmos SDK 0.42.9, wasmvm 0.16.0 #582
- Better ibc contract interface #570 (ethanfrey)
- Reject invalid events/attributes returned from contracts #560
- IBC Query methods from Wasm contracts only return OPEN channels #568
- Extendable gas costs #525
- Limit init/migrate/execute payload message size #203
- Add cli alias #496
- Remove max gas limit #529 (alpe)
- Add SECURITY.md #303
v0.17.0 (2021-05-26)
Features:
- Remove json type cast for contract msgs #520 (alpe)
- Bump github.com/cosmos/cosmos-sdk from 0.42.4 to 0.42.5 #519 (dependabot-preview[bot])
v0.16.0 (2021-04-30)
Features:
- Upgrade to wasmvm v0.14.0-rc1 #508 (alpe)
- Use the cache metrics from WasmVM #500
- Update IBC.md #494 (ethanfrey)
- Extend ContractInfo for custom data #492 (alpe)
- Reply response on submessages can overwrite "caller" result #495
- Update to sdk 0.42.4 #485
- Add extension points to the CLI #477 (alpe)
- Simplify staking reward query #399
- Update IBC.md #398
- Add IBCQuery support #434
- Follow proto dir best practice (in cosmos eco) #342
- Remove internal package #464 (alpe)
- Introduce new interfaces for extendability #471 (alpe)
- Handle non default IBC transfer port in message encoder #396
- Collect Contract Metrics #387
- Add Submessages for IBC callbacks #449
- Handle wasmvm Burn message #489 (alpe)
- Add telemetry #463 (alpe)
- Handle non default transfer port id #462 (alpe)
- Allow subsecond block times #453 (ethanfrey)
- Submsg and replies #441 (ethanfrey)
- Ibc query support #439 (ethanfrey)
- Pin/Unpin contract in cache #436 (alpe)
- Stargate msg and query #435 (ethanfrey)
- Sudo entry point #433 (ethanfrey)
- Add custom message handler option #402 (alpe)
- Expose contract pinning #401
- Add support for Stargate CosmosMsg/QueryRequest #388
- Add MsgInstantiateContractResponse.data #385
- Added randomized simulation parameters generation #389 (bragaz)
- Implement IBC contract support #394 (alpe)
Api breaking:
Fixed bugs:
- Correct order for migrated contracts #323
- Keeper Send Coins does not perform expected validation #414
v0.15.1 (2021-02-18)
Implemented enhancements:
- Support custom MessageHandler in wasm #327
Fixed bugs:
- Fix Parameter change via proposal #392
v0.15.0 (2021-01-27)
Features:
- Upgrade to cosmos-sdk v0.41.0 #390
v0.14.1 (2021-01-20)
Features:
- Upgrade to cosmos-sdk v0.40.1 final + Tendermint 0.34.3 #380
v0.14.0 (2021-01-11)
Features:
- Upgrade to cosmos-sdk v0.40.0 final #354
- Refactor to GRPC message server #366
- Make it easy to initialize contracts in genesis file with new CLI commands#326
- Upgrade to WasmVM v0.13.0 #358
- Upgrade to cosmos-sdk v0.40.0-rc6 #354
- Upgrade to cosmos-sdk v0.40.0-rc5 #344
- Add Dependabot to keep dependencies secure and up-to-date #336
Fixed bugs:
- Dependabot can't resolve your Go dependency files #339
- Errors in
InitGenesis
#335 - Invalid homeDir for export command #334
v0.13.0 (2020-12-04)
Fixed bugs:
- REST handler wrong
Sender
source #324
Closed issues:
- Change proto package to match <organisation>.<module>.<version> #329
- Out of gas causes panic when external contract store query executed #321
- Check codecov report #298
- cosmwasm.GoAPI will not work on sdk.ValAddress #264
- Stargate: Add pagination support for queries #242
Merged pull requests:
- Rename protobuf package #330 (alpe)
- Use base request data for sender #325 (alpe)
- Handle panics in query contract smart #322 (alpe)
v0.12.1 (2020-11-23)
Closed issues:
Merged pull requests:
- Exclude generate proto code files in coverage #320 (alpe)
- Upgrade wasmvm to 0.12.0 #319 (webmaster128)
- Fix chain id setup in contrib/local/setup_wasmd.sh #318 (orkunkl)
- Add pagination to grpc queries #317 (alpe)
v0.12.0 (2020-11-17)
Closed issues:
- Merge wasmd and wasmcli into a single binary #308
- Change bech32 prefix for wasmd #313
- Upgrade go-cowasmwasm to wasmvm 0.12 #309
- Use string type for AccAddresses in proto #306
- Upgrade to cosmos/sdk v0.40.0-rc2 #296
- Generate protobuf outputs in a container #295
- Instantiate contract process ordering #292
- Make Wasm maxSize a configuration option #289
- Return error if wasm to big #287
Merged pull requests:
- Set bech32 prefix #316 (alpe)
- Replace sdk.AccAddress with bech32 string #314 (alpe)
- Integrate wasmcli into wasmd #312 (alpe)
- Upgrade wasmvm aka go-cosmwasm #311 (alpe)
- Upgrade to Stargate RC3 #305 (alpe)
- Containerized Protobuf generation #304 (alpe)
- Reject wasm code exceeding limit #302 (alpe)
- Support self calling contract on instantiation #300 (alpe)
- Upgrade to Stargate RC2 #299 (alpe)