Skip to content

Releases: terra-money/classic-core

v0.5.0 - UNSTABLE

11 Aug 08:03
d6037b9
Compare
Choose a tag to compare

Release Notes

  • #529 Bump SDK to v0.43.0 and Tendermint to v0.34.11.
  • #526 Bump CosmWasm to v0.16.0.
  • #477 Burn reward_weight ratio of seigniorage instead of redirecting to oracle rewards
  • 260b41a Redirect swap fees to oracle rewards (distributed over 3 years)
  • Bump golang prerequisite from 1.15 to 1.16.

Bug Fixes

  • #497 Fix wasm oracle querier to return Base/Quote exchange rate

API Breaking Changes

Cosmos side breaking changes: here
Wallet Migration Guide: here
Contract Migration Guide: here

  • [GET] /auth/accounts/{address} does not return account coins
  • [POST] /txs/estimate_fee request and response format changed
Request (BaseReq + []sdk.Msg)
{
   "base_req":{
      "from":"terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
      "memo":"Sent via Terra Station 🚀",
      "chain_id":"columbus-3",
      "account_number":"0",
      "sequence":"1",
      "gas":"200000",
      "gas_adjustment":"1.2",
      "fees":[
         {
            "denom":"uluna",
            "amount":"50"
         }
      ],
      "simulate":false
   },
   "msgs":[
      {
         "type":"bank/MsgSend",
         "value":{
            "from_address":"terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
            "to_address":"terra14u47f8ufn2agqlpdpnfvcd2782zgnus9nslmfc",
            "amount":[
               {
                  "denom":"ukrw",
                  "amount":"10000000"
               }
            ]
         }
      }
   ]
}

Response (StdFee)
{
  "fee": {
    "gas": "string",
    "amount": [
      {
        "denom": "uluna",
        "amount": "50"
      }
    ]
  }
}
  • [GET] /market/terra_pool_delta removed, /market/mint_pool_delta & /market/burn_pool_delta added
  • [POST] /wasm/codes/{codeID}/migrate added for code migration
  • [POST] /wasm/codes/{codeID} request optionally specify admin field to make the contract as migratable
  • [GET] /wasm/contracts/{contractAddress} response format changed
    admin field replace migratable flag
{
  "code_id": "string",
  "address": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
  "creator": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
  "admin": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
  "init_msg": "string"
}

Codec Changes

  • Added messages
    • wasm/MsgMigrateCode
    • wasm/MsgUpdateContractAdmin
    • wasm/MsgClearContractAdmin
    • feegrant/MsgGrantAllowance
    • feegrant/MsgRevokeAllowance
  • Removed messages
    • wasm/MsgUpdateContractOwner
  • Added Interfaces
    • feegrant/BasicAllowance
    • feegrant/PeriodicAllowance
    • feegrant/AllowedMsgAllowance
    • msgauth/StakeAuthorization

Param subspace changes

All terra module params now has camel case param subspace

  • Market
    • poolrecoveryperiod -> PoolRecoveryPeriod
    • minstabilityspread -> MinStabilitySpread
    • +MintBasePool
    • +BurnBasePool
  • Oracle
    • voteperiod -> VotePeriod
    • votethreshold -> VoteThreshold
    • rewardband -> RewardBand
    • rewarddistributionwindow -> RewardDistributionWindow
    • whitelist -> Whitelist
    • slashfraction -> SlashFraction
    • slashwindow -> SlashWindow
    • minvalidperwindow -> MinValidPerWindow
  • Treasury
    • taxpolicy -> TaxPolicy
    • rewardpolicy -> RewardPolicy
    • seigniorageburdentarget -> SeigniorageBurdenTarget
    • miningincrement -> MiningIncrement
    • windowshort -> WindowShort
    • windowlong -> WindowLong
    • windowprobation -> WindowProbation

Message Changes

  • MsgInstantiateContract
    • InitMsg format changed from base64 to json.RawMessage, so the developers need to pass object not base64 encoded string.
    • Migratable removed
    • Owner split into Sender and Admin. Admin is optional field to specify migratable flag and the executor of the migration.
  • MsgExecuteContract
    • ExecuteMsg format changed from base64 to json.RawMessage, so the developers need to pass object not base64 encoded string.
  • MsgMigrateContract
    • MigrateMsg format changed from base64 to json.RawMessage, so the developers need to pass object not base64 encoded string.
  • MsgGrantAuthorization => MsgGrant
    • Authorization and Period merged into Grant.
    • Period renamed to Expiration and format changed from time.Duration to time.Time.
  • MsgRevokeAuthorization => MsgRevoke
    • AuthorizationMsgType renamed to MsgTypeUrl
  • MsgExecAuthorization => MsgExec
  • GenericAuthorization
    • GrantMsgType renamed Msg and it represents proto type url
  • MsgVoteWeighted
    • new governance message to submit weighted vote

v0.5.0-rc1

10 Aug 08:06
1371e1c
Compare
Choose a tag to compare
v0.5.0-rc1 Pre-release
Pre-release

Release Note

If no issue will be reported this will be the final release with latest@CosmosSDK v0.43.

Cosmos Release Note: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.43.0-rc3
CosmWasm Release Note: https://github.com/CosmWasm/cosmwasm/blob/main/MIGRATING.md#015---016

#526 Bump CosmosSDK to v0.43.0-rc3 & CosmWasm to v0.16.0
#518 Rollback market base pool split

v0.5.0-rc0

12 Jul 05:41
Compare
Choose a tag to compare
v0.5.0-rc0 Pre-release
Pre-release

Release Notes

Cosmos Release Notes

Improvements

  • #507 Bump SDK to v0.43.0-rc0.
  • #507 Bump Tendermint to v0.34.11.
  • #509 Bump cosmwasm to v0.15.1.
  • #467 Split market base pool into mint & burn base pool
  • #465 #472 Bump cosmwasm to v0.14.0.
  • #477 Burn reward_weight ratio of seigniorage instead of redirecting to oracle rewards
  • 260b41a Redirect swap fees to oracle rewards (distributed over 3 years)
  • Bump golang prerequisite from 1.15 to 1.16.

Bug Fixes

  • #497 Fix wasm oracle querier to return Base/Quote exchange rate

API Breaking Changes

Cosmos side breaking changes: here
Wallet Migration Guide: here
Contract Migration Guide: here

  • [GET] /auth/accounts/{address} does not return account coins
  • [POST] /txs/estimate_fee request and response format changed
Request (BaseReq + []sdk.Msg)
{
   "base_req":{
      "from":"terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
      "memo":"Sent via Terra Station 🚀",
      "chain_id":"columbus-3",
      "account_number":"0",
      "sequence":"1",
      "gas":"200000",
      "gas_adjustment":"1.2",
      "fees":[
         {
            "denom":"uluna",
            "amount":"50"
         }
      ],
      "simulate":false
   },
   "msgs":[
      {
         "type":"bank/MsgSend",
         "value":{
            "from_address":"terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
            "to_address":"terra14u47f8ufn2agqlpdpnfvcd2782zgnus9nslmfc",
            "amount":[
               {
                  "denom":"ukrw",
                  "amount":"10000000"
               }
            ]
         }
      }
   ]
}

Response (StdFee)
{
  "fee": {
    "gas": "string",
    "amount": [
      {
        "denom": "uluna",
        "amount": "50"
      }
    ]
  }
}
  • [GET] /market/terra_pool_delta removed, /market/mint_pool_delta & /market/burn_pool_delta added
  • [POST] /wasm/codes/{codeID}/migrate added for code migration
  • [POST] /wasm/codes/{codeID} request optionally specify admin field to make the contract as migratable
  • [GET] /wasm/contracts/{contractAddress} response format changed
    admin field replace migratable flag
{
  "code_id": "string",
  "address": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
  "creator": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
  "admin": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
  "init_msg": "string"
}

Codec Changes

  • Added messages
    • wasm/MsgMigrateCode
    • wasm/MsgUpdateContractAdmin
    • wasm/MsgClearContractAdmin
    • feegrant/MsgGrantAllowance
    • feegrant/MsgRevokeAllowance
  • Removed messages
    • wasm/MsgUpdateContractOwner
  • Added Interfaces
    • feegrant/BasicAllowance
    • feegrant/PeriodicAllowance
    • feegrant/AllowedMsgAllowance
    • msgauth/StakeAuthorization

Param subspace changes

All terra module params now has camel case param subspace

  • Market
    • poolrecoveryperiod -> PoolRecoveryPeriod
    • minstabilityspread -> MinStabilitySpread
    • +MintBasePool
    • +BurnBasePool
  • Oracle
    • voteperiod -> VotePeriod
    • votethreshold -> VoteThreshold
    • rewardband -> RewardBand
    • rewarddistributionwindow -> RewardDistributionWindow
    • whitelist -> Whitelist
    • slashfraction -> SlashFraction
    • slashwindow -> SlashWindow
    • minvalidperwindow -> MinValidPerWindow
  • Treasury
    • taxpolicy -> TaxPolicy
    • rewardpolicy -> RewardPolicy
    • seigniorageburdentarget -> SeigniorageBurdenTarget
    • miningincrement -> MiningIncrement
    • windowshort -> WindowShort
    • windowlong -> WindowLong
    • windowprobation -> WindowProbation

Message Changes

  • MsgInstantiateContract
    • InitMsg format changed from base64 to json.RawMessage, so the developers need to pass object not base64 encoded string.
    • Migratable removed
    • Owner split into Sender and Admin. Admin is optional field to specify migratable flag and the executor of the migration.
  • MsgExecuteContract
    • ExecuteMsg format changed from base64 to json.RawMessage, so the developers need to pass object not base64 encoded string.
  • MsgMigrateContract
    • MigrateMsg format changed from base64 to json.RawMessage, so the developers need to pass object not base64 encoded string.

v0.5.0-beta4

03 Jun 00:34
3166ae2
Compare
Choose a tag to compare
v0.5.0-beta4 Pre-release
Pre-release

Summary of Changes

v0.5.0-beta3

29 May 03:24
Compare
Choose a tag to compare
v0.5.0-beta3 Pre-release
Pre-release
  • dbe6117 Add treasury module burn permission
  • 028069e temporal fix for keyring dir not exist bug
  • 37661b2 distribution legacy codec fix

v0.5.0-beta2

26 May 05:36
Compare
Choose a tag to compare
v0.5.0-beta2 Pre-release
Pre-release
  • c8c8f9e
    Fix route problems on legacy rest handlers

v0.5.0-beta1

25 May 01:24
Compare
Choose a tag to compare
v0.5.0-beta1 Pre-release
Pre-release

Summary of changes

  • #467 Split market base pool into mint & burn base pool
  • #465 #472 Bump cosmwasm to v0.14.0
  • Bump SDK to stargate version
  • Burn seigniorage * reward_weight amount
  • Dividend swap fees to faithful oracles

Contract Migration Guide

https://github.com/terra-project/mainnet/wiki/Columbus-4-to-Columbus-5-contract-migration-guide

Uncategorized Changes

  • ~/.terrad home changed to ~/.terra
  • $ terracli rest-server removed, instead you can activate rest-server on ~/.terra/config/app.toml by setting enable = true of [api] section.
  • Swagger url changed to :1317/swagger-ui/ to :1317/swagger/

API Breaking Changes

Cosmos side breaking changes: https://docs.cosmos.network/master/migrations/rest.html

  • [GET] /auth/accounts/{address} does not return account coins
  • [POST] /txs/estimate_fee request and response format changed
Request (BaseReq + []sdk.Msg)
{
  "base_req": {
    "from": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
    "memo": "Sent via Terra Station 🚀",
    "chain_id": "columbus-3",
    "account_number": "0",
    "sequence": "1",
    "gas": "200000",
    "gas_adjustment": "1.2",
    "fees": [
      {
        "denom": "uluna",
        "amount": "50"
      }
    ],
    "simulate": false
  },
  "msgs": [
    "string"
  ]
}

Response (StdFee)
{
  "fee": {
    "gas": "string",
    "amount": [
      {
        "denom": "uluna",
        "amount": "50"
      }
    ]
  }
}
  • [GET] /market/terra_pool_delta removed, /market/mint_pool_delta & /market/burn_pool_delta added
  • [POST] /wasm/codes/{codeID}/migrate added for code migration
  • [POST] /wasm/codes/{codeID} request optionally specify admin field to make the contract as migratable
  • [GET] /wasm/contracts/{contractAddress} response format changed
    admin field replace migratable flag
{
  "code_id": "string",
  "address": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
  "creator": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
  "admin": "terra1wg2mlrxdmnnkkykgqg4znky86nyrtc45q336yv",
  "init_msg": "string"
}
  • [GET] /wasm/parameters return more wasm parameters max_contract_data_size and event_params
{
  "params": {
    "max_contract_size": "string",
    "max_contract_gas": "string",
    "max_contract_msg_size": "string",
    "max_contract_data_size": "string",
    "event_params": {
      "max_attribute_num": "string",
      "max_attribute_key_length": "string",
      "max_attribute_value_length": "string"
    }
  }
}
  • [GET] /staking/parameters return more staking parameterpower_reduction
{
  "unbonding_time": "string",
  "max_validators": "number",
  "max_entries": "number",
  "historical_entries": "number",
  "bond_denom": "string",
  "power_reduction": "string"
}

Codec Changes

  • Added messages
    • wasm/MsgMigrateCode
    • wasm/MsgUpdateContractAdmin
    • wasm/MsgClearContractAdmin
  • Removed messages
    • wasm/MsgUpdateContractOwner

Param subspace changes

All terra module params now has camel case param subspace

  • Market
    • poolrecoveryperiod -> PoolRecoveryPeriod
    • minstabilityspread -> MinStabilitySpread
    • +MintBasePool
    • +BurnBasePool
  • Oracle
    • voteperiod -> VotePeriod
    • votethreshold -> VoteThreshold
    • rewardband -> RewardBand
    • rewarddistributionwindow -> RewardDistributionWindow
    • whitelist -> Whitelist
    • slashfraction -> SlashFraction
    • slashwindow -> SlashWindow
    • minvalidperwindow -> MinValidPerWindow
  • Treasury
    • taxpolicy -> TaxPolicy
    • rewardpolicy -> RewardPolicy
    • seigniorageburdentarget -> SeigniorageBurdenTarget
    • miningincrement -> MiningIncrement
    • windowshort -> WindowShort
    • windowlong -> WindowLong
    • windowprobation -> WindowProbation

Frequently Asked Questions

Error: invalid character 'e' in literal true (expecting 'r')

$ terrad tendermint show-validator [--home] command does not show bech32 encoded terraconsvalpub address, but show '{"@type":"/cosmos.crypto.ed25519.PubKey","key":"bwVWtrsVrhimkACyF6lwLogwgWTtHUSnjVTl/20DLrw="}' protobuf style interface JSON. so $ terrad tx staking create-valdiator --pubkey now receive this pubkey interface JSON string.

$ terrad tx staking create-validator \
    --pubkey '{"@type":"/cosmos.crypto.ed25519.PubKey","key":"bwVWtrsVrhimkACyF6lwLogwgWTtHUSnjVTl/20DLrw="}' \
    ...

Error: No directory provided for file keyring

Problem is not fully solved, but you can still use the commands with --keyring-back-end=os

Fixed in https://github.com/cosmos/cosmos-sdk/pull/9211/files

v0.4.6

14 Apr 00:36
c39ed28
Compare
Choose a tag to compare

Upgrade Note

#466 Security patch to restrict gas wanted for free oracle votes.
#466 Bump CosmosSDK to v0.39.3

v0.4.5

18 Mar 10:59
534de88
Compare
Choose a tag to compare

Release Note

This release is a hotfix for two high-severity issues.

Upgrade Instructions

$ git fetch --all --tags
$ git checkout v0.4.5
$ make install

Upgrade Time

Mainnet

Target Height: 2,380,000

Tue Mar 30 2021 09:00:00 GMT+0000 (UTC)
Tue Mar 30 2021 01:00:00 GMT-0800 (PST)
Tue Mar 30 2021 18:00:00 GMT+0900 (KST)

Testnet

Target Height: 3,150,000

Tue Mar 25 2021 09:00:00 GMT+0000 (UTC)
Tue Mar 25 2021 01:00:00 GMT-0800 (PST)
Tue Mar 25 2021 18:00:00 GMT+0900 (KST)

Improvements

  • #463 Lower oracle feeder cost.
    Only MsgAggregateExchangeRatePrevote & MsgAggregateExchangeRateVote are supported
  • #462 Softfork to cap the max tx limit with ConsensusParam update.

v0.4.4

17 Mar 12:40
4478905
Compare
Choose a tag to compare

Release Note

The main update is Dockerfile fix to prevent illegal instruction error.