Releases: provenance-io/provenance
Release v1.18.0
v1.18.0 - 2024-03-22
The v1.18.0 release of the Provenance Blockchain protocol is focused on expanded settlement features for off-chain markets, peer-to-peer payments, and expanded asset valuation data on-chain. Some of the notable new features and improvements include:
- Commitments are a new feature of the exchange module, allowing a party to give market access to a specified amount of funds in their account.
- A New Payments capability has also been added to enable secure and asynchronous peer to peer asset transfers.
- Pricing information stored on chain has been expanded to support NAV (net asset value) data for Scopes/NFTs.
- The MsgFees parameter for the base price of the hash token has been adjusted to 40,000,000 nhash per usd-mil ($0.025/hash). This will be the last release that relies on a governance parameter for this value as the expanded support for settlement includes the ability to provide a continuous stream of pricing updates with each trade that is performed.
- Restricted markers cannot be sent to the fee collector account, and force transfers are now allowed from marker and market accounts.
- The startup warning issued when
disable-iavl-fastnode
istrue
has been removed, and the system has been updated to use github.com/cometbft/cometbft-db v0.7.0 and IAVL v0.20 to resolve some node stability issues observed withv1.18.0-rc2
. - A new
force_transfer
permission for markers allows an account to do forced transfers; thetransfer
permission no longer has this ability.
Features
- Support commitments in the exchange module #1789, PR 1830.
Commitments allow a party to give a market access to a specified amount of funds in their account. - Add Payments to the exchange module #1703.
Payments allow two parties to trade assets securely and asynchronously. - Add the ibcratelimit module #1498.
- Add NAV support for metadata scopes #1749.
- Add fix for NAV units to tourmaline upgrade handler #1815.
- In the marker module's
SendRestrictionFn
, allow a transfer agent to be identified through the context #1834. - In the exchange module, provide the admin as the transfer agent when attempting to move funds #1834.
- Add upgrade handler to set net asset values to markers in pio-testnet-1 PR 1881.
- Add upgrade handler to set net asset values and update block height for pio-mainnet-1 PR 1888.
Improvements
- Add
tourmaline
upgrade handlers for 1.18 PR 1756, #1834, #1703. - Remove the rust upgrade handlers PR 1774.
- Allow bypassing the config warning wait using an environment variable PR 1810.
- Filter out empty distribution events from begin blocker PR 1822.
- Add new force_transfer access that is required for an account to do a forced transfer (#1829).
- Update the MsgFees Params to set the nhash per usd-mil to 40,000,000 ($0.025/hash) PR 1833.
- Bid order prices are no longer restricted to amounts that can be evenly applied to a buyer settlement fee ratio PR 1834.
- In the marker and exchange modules, help ensure funds don't get sent to blocked addresses #1834.
- Update marker and exchange spec docs to include info about transfer agents #1834.
- Prevent restricted markers from being sent to the fee collector account #1845.
- Allow force transfers from marker and market accounts PR 1855.
- Remove the startup warning issued when disable-iavl-fastnode is true (we recommend keeping it as true if you already have it that way) PR 1874.
- Switch to
github.com/cometbft/cometbft-db
v0.7.0
(fromgithub.com/tendermint/tm-db
v0.6.7
) PR 1874. - Allow NAV volume to exceed a marker's supply PR 1883.
Deprecated
- The concept of an "active" market (in the exchange module) has been removed in favor of specifying whether it accepts orders #1789.
- The
MarketUpdateEnabled
endpoint has been deprecated and is no longer usable. It is replaced with theMarketUpdateAcceptingOrders
endpoint. MsgMarketUpdateEnabledRequest
is replaced withMsgMarketUpdateAcceptingOrdersRequest
.MsgMarketUpdateEnabledResponse
is replaced withMsgMarketUpdateAcceptingOrdersResponse
.EventMarketEnabled
is replaced withEventMarketOrdersEnabled
.EventMarketDisabled
is replaced withEventMarketOrdersDisabled
.
- The
Bug Fixes
- Remove deleted marker send deny entries #1666.
- Update protos, naming, and documentation to use mills for NAVs #1813.
- Update marker transfer to work with groups #1818.
- Prevent funds from going to or from a marker without the transfer agent having deposit or withdraw access (respectively) #1834.
- Ensure the store loader isn't nil when the handling an upgrade PR 1852.
- Fix
MarkerTransferAuthorization
validation to ensure the coins and addresses are all valid PR 1856. - In
MarketCommitmentSettle
, only consume the settlement fee if the settlement succeeds #1703.
Client Breaking
- The
provenanced tx exchange market-enabled
command has been changed toprovenanced tx exchange market-accepting-orders
#1789.
API Breaking
- The
MarketUpdateEnabled
endpoint has been deprecated and replaced withMarketUpdateAcceptingOrders
along with its request, response, and events #1789.
The old endpoint is no longer usable. See the Deprecated section for more details. - Accounts that have transfer access in a marker are no longer allowed to do forced transfers (#1829).
Accounts must now have the force_transfer access for that.
Dependencies
- Bump
bufbuild/buf-setup-action
from 1.27.1 to 1.30.0 (#1724, #1744, #1750, #1825, #1871) - Bump
github.com/google/uuid
from 1.3.1 to 1.6.0 (#1723, #1781, #1819) - Bump
github.com/gorilla/mux
from 1.8.0 to 1.8.1 (#1734) - Bump
golang.org/x/text
from 0.13.0 to 0.14.0 (#1735) - Bump
cosmossdk.io/math
from 1.1.2 to 1.3.0 (#1739, #1857) - Update
async-icq
fromgithub.com/strangelove-ventures/async-icq/v6
togithub.com/cosmos/ibc-apps/modules/async-icq/v6.1.0
(#1748) - Bump
github.com/spf13/viper
from 1.17.0 to 1.18.2 (#1777, #1795) - Bump
actions/setup-go
from 4 to 5 (#1776) - Bump
github.com/spf13/cast
from 1.5.1 to 1.6.0 (#1769) - Bump
actions/setup-java
from 3 to 4 (#1770) - Bump
github.com/dvsekhvalnov/jose2go
from 1.5.0 to 1.6.0 (#1793) - Bump
google.golang.org/protobuf
from 1.31.0 to 1.32.0 (#1790) - Bump
github/codeql-action
from 2 to 3 (#1784) - Bump
actions/download-artifact
from 3 to 4 (#1785) - Bump
actions/upload-artifact
from 3 to 4 (#1785) - Bump `...
Release v1.18.0-rc3
v1.18.0-rc3 - 2024-03-19
Features
- Add Payments to the exchange module #1703.
Payments allow two parties to trade assets securely and asynchronously. - Add upgrade handler to set net asset values to markers in pio-testnet-1 PR 1881.
Improvements
- Allow force transfers from marker and market accounts #1855.
- Add a
tourmaline-rc3
upgrade handler to set some new exchange module params related to payments #1703. - Remove the startup warning issued when disable-iavl-fastnode is true (we recommend keeping it as true if you already have it that way) #1874.
- Switch to
github.com/cometbft/cometbft-db
v0.7.0
(fromgithub.com/tendermint/tm-db
v0.6.7
) #1874. - Allow NAV volume to exceed a marker's supply #1883.
Bug Fixes
- Fix
MarkerTransferAuthorization
validation to ensure the coins and addresses are all valid #1856. - In
MarketCommitmentSettle
, only consume the settlement fee if the settlement succeeds #1703.
Dependencies
- Bump
google.golang.org/grpc
from 1.61.1 to 1.62.1 (#1850, #1864) - Bump
cosmossdk.io/math
from 1.2.0 to 1.3.0 (#1857) - Bump
peter-evans/create-pull-request
from 6.0.0 to 6.0.2 (#1858, #1872) - Bump
github.com/golang/protobuf
from 1.5.3 to 1.5.4 (#1863) - Bump
github.com/stretchr/testify
from 1.8.4 to 1.9.0 (#1860) - Bump
bufbuild/buf-setup-action
from 1.29.0 to 1.30.0 (#1871) - Bump
github.com/cosmos/cosmos-sdk
from v0.46.13-pio-3 to v0.46.13-pio-4 (#1874). - Bump
github.com/cosmos/ibc-go/v6
from v6.2.0-pio-1 to v6.2.0-pio-2 (#1874). - Bump
github.com/CosmWasm/wasmd
from v0.30.0-pio-6 to v0.30.0-pio-7 (#1874). - Bump
github.com/cosmos/iavl
from v0.19.6 to v0.20.1 (#1874).
Full Commit History
v1.18.0-rc2 - 2024-02-22
Features
- In the marker module's
SendRestrictionFn
, allow a transfer agent to be identified through the context #1834. - In the exchange module, provide the admin as the transfer agent when attepting to move funds #1834.
Improvements
- Add an empty
tourmaline-rc2
upgrade handler #1834. - Add new force_transfer access that is required for an account to do a forced transfer (#1829).
- Add exchange commitment stuff to CLI PR 1830.
- Update the MsgFees Params to set the nhash per usd-mil to 40,000,000 ($0.025/hash) #1833.
- Bid order prices are no longer restricted to amounts that can be evenly applied to a buyer settlement fee ratio 1834.
- In the marker and exchange modules, help ensure funds don't get sent to blocked addresses #1834.
- Update marker and exchange spec docs to include info about transfer agents #1834.
- Prevent restricted markers from being sent to the fee collector account #1845.
Bug Fixes
- Prevent funds from going to or from a marker without the transfer agent having deposit or withdraw access (respectively) #1834.
- Ensure the store loader isn't nil when the handling an upgrade 1852.
API Breaking
- Accounts that have transfer access in a marker are no longer allowed to do forced transfers (#1829).
Accounts must now have the force_transfer access for that.
Dependencies
- Bump
codecov/codecov-action
from 3 to 4 (#1828) - Bump
peter-evans/create-pull-request
from 5.0.2 to 6.0.0 (#1827) - Bump
bufbuild/buf-setup-action
from 1.28.1 to 1.29.0 (#1825) - Bump
github.com/rs/zerolog
from 1.31.0 to 1.32.0 (#1832) - Bump
serde-json-wasm
from 1.0.0 to 1.0.1 in /testutil/contracts/rate-limiter (#1836) - Bump
serde-json-wasm
from 0.5.1 to 0.5.2 in /testutil/contracts/counter (#1837) - Bump
serde-json-wasm
from 0.5.1 to 0.5.2 in /testutil/contracts/echo (#1838) - Bump
golangci/golangci-lint-action
from 3 to 4 (#1840) - Bump
google.golang.org/grpc
from 1.61.0 to 1.61.1 (#1842) - Bump
cosmos-sdk
from v0.46.13-pio-2 to v0.46.13-pio-3 (#1848)
Full Commit History
v1.18.0-rc1 - 2024-01-30
Features
- Add the ibcratelimit module #1498.
- Add NAV support for metadata scopes #1749.
- Add fix for NAV units to tourmaline upgrade handler #1815.
- Support commitments in the exchange module #1789.
Improvements
- Add upgrade handler for 1.18 #1756.
- Remove the rust upgrade handlers PR 1774.
- Allow bypassing the config warning wait using an environment variable PR 1810.
- Filter out empty distribution events from begin blocker #1822.
Deprecated
- The concept of an "active" market (in the exchange module) has been removed in favor of specifying whether it accepts orders #1789.
- The
MarketUpdateEnabled
endpoint has been deprecated and is no longer usable. It is replaced with theMarketUpdateAcceptingOrders
endpoint. MsgMarketUpdateEnabledRequest
is replaced withMsgMarketUpdateAcceptingOrdersRequest
.MsgMarketUpdateEnabledResponse
is replaced withMsgMarketUpdateAcceptingOrdersResponse
.EventMarketEnabled
is replaced withEventMarketOrdersEnabled
.EventMarketDisabled
is replaced withEventMarketOrdersDisabled
.
- The
Bug Fixes
- Remove deleted marker send deny entries #1666.
- Update protos, naming, and documentation to use mills #1813.
- Update marker transfer to work with groups #1818.
Client Breaking
- The
provenanced tx exchange market-enabled
command has been changed toprovenanced tx exchange market-accepting-orders
#1789.
API Breaking
- The
MarketUpdateEnabled
has been deprecated and replaced withMarketUpdateAcceptingOrders
along with its request, response, and events #1789.
The old endpoint is no longer usable. See the Deprecated section for more details.
Dependencies
Release v1.18.0-rc2
v1.18.0-rc2 - 2024-02-22
Features
- In the marker module's
SendRestrictionFn
, allow a transfer agent to be identified through the context #1834. - In the exchange module, provide the admin as the transfer agent when attepting to move funds #1834.
Improvements
- Add an empty
tourmaline-rc2
upgrade handler #1834. - Add new force_transfer access that is required for an account to do a forced transfer (#1829).
- Add exchange commitment stuff to CLI PR 1830.
- Update the MsgFees Params to set the nhash per usd-mil to 40,000,000 ($0.025/hash) #1833.
- Bid order prices are no longer restricted to amounts that can be evenly applied to a buyer settlement fee ratio 1834.
- In the marker and exchange modules, help ensure funds don't get sent to blocked addresses #1834.
- Update marker and exchange spec docs to include info about transfer agents #1834.
- Prevent restricted markers from being sent to the fee collector account #1845.
Bug Fixes
- Prevent funds from going to or from a marker without the transfer agent having deposit or withdraw access (respectively) #1834.
- Ensure the store loader isn't nil when the handling an upgrade 1852.
API Breaking
- Accounts that have transfer access in a marker are no longer allowed to do forced transfers (#1829).
Accounts must now have the force_transfer access for that.
Dependencies
- Bump
codecov/codecov-action
from 3 to 4 (#1828) - Bump
peter-evans/create-pull-request
from 5.0.2 to 6.0.0 (#1827) - Bump
bufbuild/buf-setup-action
from 1.28.1 to 1.29.0 (#1825) - Bump
github.com/rs/zerolog
from 1.31.0 to 1.32.0 (#1832) - Bump
serde-json-wasm
from 1.0.0 to 1.0.1 in /testutil/contracts/rate-limiter (#1836) - Bump
serde-json-wasm
from 0.5.1 to 0.5.2 in /testutil/contracts/counter (#1837) - Bump
serde-json-wasm
from 0.5.1 to 0.5.2 in /testutil/contracts/echo (#1838) - Bump
golangci/golangci-lint-action
from 3 to 4 (#1840) - Bump
google.golang.org/grpc
from 1.61.0 to 1.61.1 (#1842) - Bump
cosmos-sdk
from v0.46.13-pio-2 to v0.46.13-pio-3 (#1848)
Full Commit History
v1.18.0-rc1 - 2024-01-30
Features
- Add the ibcratelimit module #1498.
- Add NAV support for metadata scopes #1749.
- Add fix for NAV units to tourmaline upgrade handler #1815.
- Support commitments in the exchange module #1789.
Improvements
- Add upgrade handler for 1.18 #1756.
- Remove the rust upgrade handlers PR 1774.
- Allow bypassing the config warning wait using an environment variable PR 1810.
- Filter out empty distribution events from begin blocker #1822.
Deprecated
- The concept of an "active" market (in the exchange module) has been removed in favor of specifying whether it accepts orders #1789.
- The
MarketUpdateEnabled
endpoint has been deprecated and is no longer usable. It is replaced with theMarketUpdateAcceptingOrders
endpoint. MsgMarketUpdateEnabledRequest
is replaced withMsgMarketUpdateAcceptingOrdersRequest
.MsgMarketUpdateEnabledResponse
is replaced withMsgMarketUpdateAcceptingOrdersResponse
.EventMarketEnabled
is replaced withEventMarketOrdersEnabled
.EventMarketDisabled
is replaced withEventMarketOrdersDisabled
.
- The
Bug Fixes
- Remove deleted marker send deny entries #1666.
- Update protos, naming, and documentation to use mills #1813.
- Update marker transfer to work with groups #1818.
Client Breaking
- The
provenanced tx exchange market-enabled
command has been changed toprovenanced tx exchange market-accepting-orders
#1789.
API Breaking
- The
MarketUpdateEnabled
has been deprecated and replaced withMarketUpdateAcceptingOrders
along with its request, response, and events #1789.
The old endpoint is no longer usable. See the Deprecated section for more details.
Dependencies
- Bump
bufbuild/buf-setup-action
from 1.27.1 to 1.28.1 (#1724, #1744, #1750) - Bump
github.com/google/uuid
from 1.3.1 to 1.6.0 (#1723, #1781, #1819) - Bump
github.com/gorilla/mux
from 1.8.0 to 1.8.1 (#1734) - Bump
golang.org/x/text
from 0.13.0 to 0.14.0 (#1735) - Bump
cosmossdk.io/math
from 1.1.2 to 1.2.0 (#1739) - Update
async-icq
fromgithub.com/strangelove-ventures/async-icq/v6
togithub.com/cosmos/ibc-apps/modules/async-icq/v6.1.0
(#1748) - Bump
github.com/spf13/viper
from 1.17.0 to 1.18.2 (#1777, #1795) - Bump
actions/setup-go
from 4 to 5 (#1776) - Bump
github.com/spf13/cast
from 1.5.1 to 1.6.0 (#1769) - Bump
actions/setup-java
from 3 to 4 (#1770) - Bump
github.com/dvsekhvalnov/jose2go
from 1.5.0 to 1.6.0 (#1793) - Bump
google.golang.org/protobuf
from 1.31.0 to 1.32.0 (#1790) - Bump
github/codeql-action
from 2 to 3 (#1784) - Bump
actions/download-artifact
from 3 to 4 (#1785) - Bump
actions/upload-artifact
from 3 to 4 (#1785) - Bump
google.golang.org/grpc
from 1.59.0 to 1.61.0 (#1794, #1820) - Bump
golang.org/x/crypto
from 0.14.0 to 0.17.0 (#1788) - Bump
cosmossdk.io/errors
from 1.0.0 to 1.0.1 (#1806) - Bump
actions/cache
from 3 to 4 (#1817)
Full Commit History
Release v1.18.0-rc1
v1.18.0-rc1 - 2024-01-30
Features
- Add the ibcratelimit module #1498.
- Add NAV support for metadata scopes #1749.
- Add fix for NAV units to tourmaline upgrade handler #1815.
- Support commitments in the exchange module #1789.
Improvements
- Add upgrade handler for 1.18 #1756.
- Remove the rust upgrade handlers PR 1774.
- Allow bypassing the config warning wait using an environment variable PR 1810.
- Filter out empty distribution events from begin blocker #1822.
Deprecated
- The concept of an "active" market (in the exchange module) has been removed in favor of specifying whether it accepts orders #1789.
- The
MarketUpdateEnabled
endpoint has been deprecated and is no longer usable. It is replaced with theMarketUpdateAcceptingOrders
endpoint. MsgMarketUpdateEnabledRequest
is replaced withMsgMarketUpdateAcceptingOrdersRequest
.MsgMarketUpdateEnabledResponse
is replaced withMsgMarketUpdateAcceptingOrdersResponse
.EventMarketEnabled
is replaced withEventMarketOrdersEnabled
.EventMarketDisabled
is replaced withEventMarketOrdersDisabled
.
- The
Bug Fixes
- Remove deleted marker send deny entries #1666.
- Update protos, naming, and documentation to use mills #1813.
- Update marker transfer to work with groups #1818.
Client Breaking
- The
provenanced tx exchange market-enabled
command has been changed toprovenanced tx exchange market-accepting-orders
#1789.
API Breaking
- The
MarketUpdateEnabled
has been deprecated and replaced withMarketUpdateAcceptingOrders
along with its request, response, and events #1789.
The old endpoint is no longer usable. See the Deprecated section for more details.
Dependencies
- Bump
bufbuild/buf-setup-action
from 1.27.1 to 1.28.1 (#1724, #1744, #1750) - Bump
github.com/google/uuid
from 1.3.1 to 1.6.0 (#1723, #1781, #1819) - Bump
github.com/gorilla/mux
from 1.8.0 to 1.8.1 (#1734) - Bump
golang.org/x/text
from 0.13.0 to 0.14.0 (#1735) - Bump
cosmossdk.io/math
from 1.1.2 to 1.2.0 (#1739) - Update
async-icq
fromgithub.com/strangelove-ventures/async-icq/v6
togithub.com/cosmos/ibc-apps/modules/async-icq/v6.1.0
(#1748) - Bump
github.com/spf13/viper
from 1.17.0 to 1.18.2 (#1777, #1795) - Bump
actions/setup-go
from 4 to 5 (#1776) - Bump
github.com/spf13/cast
from 1.5.1 to 1.6.0 (#1769) - Bump
actions/setup-java
from 3 to 4 (#1770) - Bump
github.com/dvsekhvalnov/jose2go
from 1.5.0 to 1.6.0 (#1793) - Bump
google.golang.org/protobuf
from 1.31.0 to 1.32.0 (#1790) - Bump
github/codeql-action
from 2 to 3 (#1784) - Bump
actions/download-artifact
from 3 to 4 (#1785) - Bump
actions/upload-artifact
from 3 to 4 (#1785) - Bump
google.golang.org/grpc
from 1.59.0 to 1.61.0 (#1794, #1820) - Bump
golang.org/x/crypto
from 0.14.0 to 0.17.0 (#1788) - Bump
cosmossdk.io/errors
from 1.0.0 to 1.0.1 (#1806) - Bump
actions/cache
from 3 to 4 (#1817)
Full Commit History
Release v1.17.1
v1.17.1 - 2024-01-11
Users should upgrade to v1.17.1 at their earliest convenience.
Release v1.17.1 addresses CWA-2023-004 and also adds some command-line functionality and configuration recommendations.
[High Low] Security Advisory CWA-2023-004
Provenance 1.17.1 contains a dependency update for the CosmWasm VM to resolve a security issue which could result in non-determinism and a halt of the network. This advisory has been reclassified from HIGH to LOW risk due to the configuration of the Provenance Blockchain Network.
The Provenance Blockchain network does not permit the permission-less upload of smart contract code, resulting in a Low risk exposure for this advisory. The Provenance Blockchain Foundation advises against accepting any further smart contract code proposals until after the deployment of the 1.17.1 patch. This is to provide the network with an opportunity to mitigate potential risks effectively. Updating to the 1.17.1 release is recommended at your earliest convenience.
New Configuration Recommendations
Provenance has a few new recommendations regarding node configuration.
Goleveldb
Provenance now recommends that nodes use goleveldb
as their db backend. Support for cleveldb
and badgerdb
will be removed in a future upgrade. It is better to do this migration outside of an upgrade. Nodes currently using those database backends should migrate to goleveldb
at your leisure prior to that upgrade. If your node is using cleveldb
, a warning will be issued when your node starts.
To migrate to goleveldb
from cleveldb
:
- Stop your node.
- Back up your
data
andconfig
directories. - Update your
config.toml
to havedb_backend = "goleveldb"
. - Update your
app.toml
to have eitherapp-db-backend = ""
orapp-db-backend = "goleveldb"
. - Restart your node.
In some cases, that process might not work and your node will fail to restart. If that happens, restore your data
and config
directories and follow the same steps below.
To migrate to goleveldb
from badgerdb
(or if the above steps failed):
- Stop your node.
- Back up your
data
andconfig
directories. - Use the dbmigrate utility to migrate your node's database to
goleveldb
. This can take 3 hours or more to complete and should not be interrupted. - Restart your node.
IAVL-Fastnode
Provenance also recommends that nodes enable iavl-fastnode. In a future upgrade, nodes will be required to use iavl-fastnode, and it is better to do this migration outside of an upgrade. If your node's app.toml
has iavl-disable-fastnode = true
, you should migrate your store at your leisure prior to the next upgrade. If your node has iavl-fastnode disabled, a warning will be issued when your node starts.
It might take 3 hours or more for the migration to finish. Do not stop or restart your node during this process. Your node will be unavailable during this process.
To migrate to iavl-fastnode, follow these steps:
- Stop your node.
- Back up your data directory.
- Update your node's
app.toml
to haveiavl-disable-fastnode = false
. - Restart your node.
Pruning Interval
Provenance recommends, too, that validators use a pruning interval of at most 10
. This can help prevent missed blocks. This is configured in app.toml
. If you have a pruning
value of "default"
, "nothing"
, or "everything"
, you are okay. If you have a pruning
value of "custom"
and a pruning-interval
of 1000
or more, a warning will be issued when your node starts.
Indexer
Lastly, Provenance recommends that validators do not enable tx indexing. This should also help prevent missed blocks. This is configured in config.toml
in the indexer
field of the tx_index
section (aka tx_index.indexer
). If you have an indexer defined, a warning will be issued when your node starts.
Features
- Add CLI commands for the exchange module endpoints and queries #1701.
- Create CLI commands for adding a market to a genesis file #1757.
- Add CLI command to generate autocomplete shell scripts #1762.
Improvements
- Add StoreLoader wrapper to check configuration settings #1792.
- Create a default market in
make run
,localnet
,devnet
and theprovenanced testnet
command #1757. - Updated documentation for each module to work with docusaurus PR 1763
- Set the default
iavl-disable-fastnode
value tofalse
and the defaulttx_index.indexer
value to"null"
#1807.
Bug Fixes
- Deprecate marker proposal transaction #1797.
Dependencies
- Bump
github.com/spf13/cobra
from 1.7.0 to 1.8.0 (#1733) - Bump
github.com/CosmWasm/wasmvm
from 1.2.4 to 1.2.6 (#1799) - Bump
github.com/CosmWasm/wasmd
from v0.30.0-pio-5 to v0.30.0-pio-6 (#1799)
Full Commit History
Release v1.17.0
v1.17.0 - 2023-11-13
Release v1.17.0 brings expanded support for token exchange with the new Exchange and Hold modules.
Overview
With the release of 1.17.0 the Provenance Blockchain protocol is enhanced with 'in place hold' capabilities that remove the requirement for a 3rd party escrow solution. Additional improvements for cross zone markers and on chain TVL are also included.
Hold/Exchange
The hold capability is implemented through a private module api that integrates with the bank module to reduce spendable balances on accounts. Building on top of these holds is the new Exchange module which offers low level primitives for buy and sell order books that leverage these holds. Developers of exchange contracts or applications are encouraged to migrate from smart contracts that holds assets internally to these new exchange apis that provide more efficient execution and reduce counter-party risk for their users.
IBC/Markers
A new set of capabilities for restricted markers sent over IBC has been added that synchronizes transfer authority and marker configuration on a destination network using metadata attached to ICS-20 IBC transfers. This is the first step of several planned enhancements for multi-zone tokens on the Provenance Network of blockchains.
Additionally a new attribute has been added to markers that allows a creator to notionally define the associated value of each token in USD. This allows for a better on-chain experience for monitoring TVL compared to the existing approach that uses an off-chain service to provide this metadata. The new exchange module will further attach transaction settlement prices to markers in an effort to keep this information current and relevant with each settlement.
Features
- Create the
x/exchange
module which facilitates the buying and selling of assets #1658, #1699, #1700.
Assets and funds remain in their owner's account (with a hold on them) until the order is settled (or cancelled).
Market's are created to manage order matching and define fees.
The chain will receive a portion of the fees a market collects. - Allow marker's transfer authority to prevent transfer of restricted coin with deny list on send #1518.
- Add net asset value to markers #1328.
- Add ICQHost and Oracle module to allow cross chain oracle queries #1497.
- New
GetByAddr
metadata query #1443. - Add Trigger module queries to stargate whitelist for smart contracts #1636.
- Added the saffron upgrade handlers PR 1648.
- Create the
x/hold
module which facilitates locking funds in an owners account #1607.
Funds with a hold on them cannot be transferred until the hold is removed.
Management of holds is internal, but there are queries for looking up holds on accounts.
Holds are also reflected in thex/bank
module'sSpendableBalances
query. - Add new MaxSupply param to marker module and deprecate MaxTotalSupply #1292.
- Add hidden docgen command to output documentation in different formats #1468.
- Add ics20 marker creation for receiving marker via ibc sends #1127.
Improvements
- Add IBC-Hooks module for Axelar GMP support PR 1659.
- Update ibcnet ports so they don't conflict with host machine #1622.
- Replace custom ibc-go v6.1.1 fork with official module #1616.
- Migrate
msgfees
gov proposals to v1 #1328. - Updated metadata queries to optionally include the request and id info #1443.
The request is now omitted by default, but will be included ifinclude_request
istrue
.
The id info is still included by default, but will be excluded ifexclude_id_info
istrue
. - Removed the quicksilver upgrade handlers PR 1648.
- Bump cometbft to v0.34.29 (from v0.34.28) PR 1649.
- Add genesis/init for Marker module send deny list addresses #1660.
- Add automatic changelog entries for dependabot #1674.
- Ensure IBC marker has matching supply #1706.
- Add publishing of docker arm64 container builds #1634.
- Add additional logging to trigger module #1718.
- When the exchange module settles orders, update the marker net-asset-values #1736.
- Add the EventTriggerDetected and EventTriggerExecuted events #1717.
Bug Fixes
- Fix ibcnet relayer creating multiple connections on restart #1620.
- Fix for incorrect resource-id type casting on contract specification #1647.
- Allow restricted coins to be quarantined #1626.
- Prevent marker forced transfers from module accounts #1626.
- Change config load order so custom.toml can override other config #1262.
- Fixed denom metadata source chain-id retrieval for new ibc markers #1726.
Client Breaking
- Metadata query responses no longer include the request by default #1443.
They are still available by setting theinclude_request
flag in the requests. - The
provenanced query metadata get
command has been changed to use the newGetByAddr
query #1443.
The command can now take in multiple ids.
The output of this command reflects theGetByAddrResponse
instead of specific type queries.
The command no longer has any--include-<thing>
flags since they don't pertain to theGetByAddr
query.
The specific queries (e.g.provenanced query metadata scope
) are still available with all appropriate flags.
Dependencies
- Bump
google.golang.org/grpc
from 1.56.1 to 1.59.0 (#1624, #1635, #1672, #1685, #1689, #1710) - Bump
crazy-max/ghaction-import-gpg
from 5 to 6 (#1677) - Bump
golang.org/x/text
from 0.12.0 to 0.13.0 (#1667) - Bump
actions/checkout
from 3 to 4 (#1668) - Bump
bufbuild/buf-breaking-action
from 1.1.2 to 1.1.3 (#1663) - Bump
cosmossdk.io/math
from 1.0.1 to 1.1.2 (#1656) - Bump
github.com/google/uuid
from 1.3.0 to 1.3.1 (#1657) - Bump
golangci/golangci-lint-action
from 3.6.0 to 3.7.0 (#1651) - Bump
bufbuild/buf-setup-action
from 1.21.0 to 1.27.1 (#1610, #1613, #1631, #1632, #1642, #1645, #1650, #1694, #1711) - Bump
cometbft to v0.34.29
(from v0.34.28) (#1649) - Bump
golang.org/x/text
from 0.11.0 to 0.12.0 (#1644) - Bump `gith...
Release v1.17.0-rc3
v1.17.0-rc3 - 2023-11-10
Improvements
- Add upgrade handler to set net asset values to markers PR 1712.
- Add additional logging to trigger module #1718.
- When the exchange module settles orders, update the marker net-asset-values (#1736.
- Add the EventTriggerDetected and EventTriggerExecuted events #1717.
- Add spec docs for the exchange module #1700.
Bug Fixes
- Fixed denom metadata source chain-id retrieval for new ibc markers #1726.
Full Commit History
v1.17.0-rc2 - 2023-11-03
Features
- Add the
saffron-rc2
upgrade and updatesaffron
to create denom metadata for IBC markers #1728.
Improvements
- Wrote unit tests on the keeper methods #1699.
- During
FillBids
, the seller settlement fee is now calculated on the total price instead of each order individually #1699. - In the
OrderFeeCalc
query, ensure the market exists #1699. - Add publishing of docker arm64 container builds #1634
Bug Fixes
- During
InitGenesis
, ensure LastOrderId is at least the largest order id #1699. - Properly populate the permissions lists when reading access grants from state #1699.
- Fixed the paginated order queries to properly look up orders #1699.
Full Commit History
v1.17.0-rc1 - 2023-10-18
Features
- Create the
x/exchange
module which facilitates the buying and selling of assets #1658.
Assets and funds remain in their owner's account (with a hold on them) until the order is settled (or cancelled).
Market's are created to manage order matching and define fees.
The chain will receive a portion of the fees a market collects. - Allow marker's transfer authority to prevent transfer of restricted coin with deny list on send #1518.
- Add net asset value to markers #1328.
- Add ICQHost and Oracle module to allow cross chain oracle queries #1497.
- New
GetByAddr
metadata query #1443. - Add Trigger module queries to stargate whitelist for smart contracts #1636
- Added the saffron upgrade handlers PR 1648.
- Create the
x/hold
module which facilitates locking funds in an owners account #1607.
Funds with a hold on them cannot be transferred until the hold is removed.
Management of holds is internal, but there are queries for looking up holds on accounts.
Holds are also reflected in thex/bank
module'sSpendableBalances
query. - Add new MaxSupply param to marker module and deprecate MaxTotalSupply. #1292.
- Add hidden docgen command to output documentation in different formats. #1468.
- Add ics20 marker creation for receiving marker via ibc sends #1127.
Improvements
- Add IBC-Hooks module for Axelar GMP support PR 1659
- Update ibcnet ports so they don't conflict with host machine. #1622
- Replace custom ibc-go v6.1.1 fork with official module. #1616
- Migrate
msgfees
gov proposals to v1. #1328 - Updated metadata queries to optionally include the request and id info #1443.
The request is now omitted by default, but will be included ifinclude_request
istrue
.
The id info is still included by default, but will be excluded ifexclude_id_info
istrue
. - Removed the quicksilver upgrade handlers PR 1648.
- Bump cometbft to v0.34.29 (from v0.34.28) PR 1649.
- Add genesis/init for Marker module send deny list addresses. #1660
- Add automatic changelog entries for dependabot. #1674
- Ensure IBC marker has matching supply #1706.
Bug Fixes
- Fix ibcnet relayer creating multiple connections on restart #1620.
- Fix for incorrect resource-id type casting on contract specification #1647.
- Allow restricted coins to be quarantined #1626.
- Prevent marker forced transfers from module accounts #1626.
- Change config load order so custom.toml can override other config. #1262
- Fix the saffron and saffron-rc1 upgrade handlers to add correct ibchooks store key PR 1715.
Client Breaking
- Metadata query responses no longer include the request by default #1443.
They are still available by setting theinclude_request
flag in the requests. - The
provenanced query metadata get
command has been changed to use the newGetByAddr
query #1443.
The command can now take in multiple ids.
The output of this command reflects theGetByAddrResponse
instead of specific type queries.
The command no longer has any--include-<thing>
flags since they don't pertain to theGetByAddr
query.
The specific queries (e.g.provenanced query metadata scope
) are still available with all appropriate flags.
Dependencies
- Bump
google.golang.org/grpc
from 1.56.1 to 1.59.0 (#1624, #1635, #1672, #1685, #1689, #1710) - Bump
crazy-max/ghaction-import-gpg
from 5 to 6 (#1677) - Bump
golang.org/x/text
from 0.12.0 to 0.13.0 (#1667) - Bump
actions/checkout
from 3 to 4 (#1668) - Bump
bufbuild/buf-breaking-action
from 1.1.2 to 1.1.3 (#1663) - Bump
cosmossdk.io/math
from 1.0.1 to 1.1.2 (#1656) - Bump
github.com/google/uuid
from 1.3.0 to 1.3.1 (#1657) - Bump
golangci/golangci-lint-action
from 3.6.0 to 3.7.0 (#1651) - Bump
bufbuild/buf-setup-action
from 1.21.0 to 1.27.1 (#1610, #1613, #1631, #1632, #1642, #1645, #1650, #1694, #1711) - Bump
cometbft to v0.34.29
(from v0.34.28) (#1649) - Bump
golang.org/x/text
from 0.11.0 to 0.12.0 (#1644) - Bump
github.com/rs/zerolog
from 1.29.1 to 1.31.0 (#1639, #1691) - Bump
github.com/cosmos/ibc-go/v6
from 6.1.1 to 6.2.0 (#1629) - Bump
cosmossdk.io/errors
from 1.0.0-beta.7 to 1.0.0 ([#...
Release v1.17.0-rc2
v1.17.0-rc2 - 2023-11-03
Features
- Add the
saffron-rc2
upgrade and updatesaffron
to create denom metadata for IBC markers #1728.
Improvements
- Wrote unit tests on the keeper methods #1699.
- During
FillBids
, the seller settlement fee is now calculated on the total price instead of each order individually #1699. - In the
OrderFeeCalc
query, ensure the market exists #1699. - Add publishing of docker arm64 container builds #1634
Bug Fixes
- During
InitGenesis
, ensure LastOrderId is at least the largest order id #1699. - Properly populate the permissions lists when reading access grants from state #1699.
- Fixed the paginated order queries to properly look up orders #1699.
Full Commit History
v1.17.0-rc1 - 2023-10-18
Features
- Create the
x/exchange
module which facilitates the buying and selling of assets #1658.
Assets and funds remain in their owner's account (with a hold on them) until the order is settled (or cancelled).
Market's are created to manage order matching and define fees.
The chain will receive a portion of the fees a market collects. - Allow marker's transfer authority to prevent transfer of restricted coin with deny list on send #1518.
- Add net asset value to markers #1328.
- Add ICQHost and Oracle module to allow cross chain oracle queries #1497.
- New
GetByAddr
metadata query #1443. - Add Trigger module queries to stargate whitelist for smart contracts #1636
- Added the saffron upgrade handlers PR 1648.
- Create the
x/hold
module which facilitates locking funds in an owners account #1607.
Funds with a hold on them cannot be transferred until the hold is removed.
Management of holds is internal, but there are queries for looking up holds on accounts.
Holds are also reflected in thex/bank
module'sSpendableBalances
query. - Add new MaxSupply param to marker module and deprecate MaxTotalSupply. #1292.
- Add hidden docgen command to output documentation in different formats. #1468.
- Add ics20 marker creation for receiving marker via ibc sends #1127.
Improvements
- Add IBC-Hooks module for Axelar GMP support PR 1659
- Update ibcnet ports so they don't conflict with host machine. #1622
- Replace custom ibc-go v6.1.1 fork with official module. #1616
- Migrate
msgfees
gov proposals to v1. #1328 - Updated metadata queries to optionally include the request and id info #1443.
The request is now omitted by default, but will be included ifinclude_request
istrue
.
The id info is still included by default, but will be excluded ifexclude_id_info
istrue
. - Removed the quicksilver upgrade handlers PR 1648.
- Bump cometbft to v0.34.29 (from v0.34.28) PR 1649.
- Add genesis/init for Marker module send deny list addresses. #1660
- Add automatic changelog entries for dependabot. #1674
- Ensure IBC marker has matching supply #1706.
Bug Fixes
- Fix ibcnet relayer creating multiple connections on restart #1620.
- Fix for incorrect resource-id type casting on contract specification #1647.
- Allow restricted coins to be quarantined #1626.
- Prevent marker forced transfers from module accounts #1626.
- Change config load order so custom.toml can override other config. #1262
- Fix the saffron and saffron-rc1 upgrade handlers to add correct ibchooks store key PR 1715.
Client Breaking
- Metadata query responses no longer include the request by default #1443.
They are still available by setting theinclude_request
flag in the requests. - The
provenanced query metadata get
command has been changed to use the newGetByAddr
query #1443.
The command can now take in multiple ids.
The output of this command reflects theGetByAddrResponse
instead of specific type queries.
The command no longer has any--include-<thing>
flags since they don't pertain to theGetByAddr
query.
The specific queries (e.g.provenanced query metadata scope
) are still available with all appropriate flags.
Dependencies
- Bump
google.golang.org/grpc
from 1.56.1 to 1.59.0 (#1624, #1635, #1672, #1685, #1689, #1710) - Bump
crazy-max/ghaction-import-gpg
from 5 to 6 (#1677) - Bump
golang.org/x/text
from 0.12.0 to 0.13.0 (#1667) - Bump
actions/checkout
from 3 to 4 (#1668) - Bump
bufbuild/buf-breaking-action
from 1.1.2 to 1.1.3 (#1663) - Bump
cosmossdk.io/math
from 1.0.1 to 1.1.2 (#1656) - Bump
github.com/google/uuid
from 1.3.0 to 1.3.1 (#1657) - Bump
golangci/golangci-lint-action
from 3.6.0 to 3.7.0 (#1651) - Bump
bufbuild/buf-setup-action
from 1.21.0 to 1.27.1 (#1610, #1613, #1631, #1632, #1642, #1645, #1650, #1694, #1711) - Bump
cometbft to v0.34.29
(from v0.34.28) (#1649) - Bump
golang.org/x/text
from 0.11.0 to 0.12.0 (#1644) - Bump
github.com/rs/zerolog
from 1.29.1 to 1.31.0 (#1639, #1691) - Bump
github.com/cosmos/ibc-go/v6
from 6.1.1 to 6.2.0 (#1629) - Bump
cosmossdk.io/errors
from 1.0.0-beta.7 to 1.0.0 (#1628) - Bump
google.golang.org/protobuf
from 1.30.0 to 1.31.0 (#1611) - Bump
docker/setup-buildx-action
from 2 to 3 (#1681) - Bump
docker/login-action
from 2 to 3 (#1680) - Bump
docker/build-push-action
from 4 to 5 (#1679) - Bump
github.com/spf13/viper
from 1.16.0 to 1.17.0 (#1695) - Bump
github.com/otiai10/copy
from 1.12.0 to 1.14.0 (#1693) - Bump
stefanzweifel/git-auto-commit-action
from 4 to 5 (#1696) - Bump
golang.org/x/net
from 0.15.0 to 0.17.0 (#1704) - Bump
bufbuild/buf-lint-action
from 1.0.3 to 1.1.0 ([#1705](https://github....
Release v1.17.0-rc1
v1.17.0-rc1 - 2023-10-18
Features
- Create the
x/exchange
module which facilitates the buying and selling of assets #1658.
Assets and funds remain in their owner's account (with a hold on them) until the order is settled (or cancelled).
Market's are created to manage order matching and define fees.
The chain will receive a portion of the fees a market collects. - Allow marker's transfer authority to prevent transfer of restricted coin with deny list on send #1518.
- Add net asset value to markers #1328.
- Add ICQHost and Oracle module to allow cross chain oracle queries #1497.
- New
GetByAddr
metadata query #1443. - Add Trigger module queries to stargate whitelist for smart contracts #1636
- Added the saffron upgrade handlers PR 1648.
- Create the
x/hold
module which facilitates locking funds in an owners account #1607.
Funds with a hold on them cannot be transferred until the hold is removed.
Management of holds is internal, but there are queries for looking up holds on accounts.
Holds are also reflected in thex/bank
module'sSpendableBalances
query. - Add new MaxSupply param to marker module and deprecate MaxTotalSupply. #1292.
- Add hidden docgen command to output documentation in different formats. #1468.
- Add ics20 marker creation for receiving marker via ibc sends #1127.
Improvements
- Add IBC-Hooks module for Axelar GMP support PR 1659
- Update ibcnet ports so they don't conflict with host machine. #1622
- Replace custom ibc-go v6.1.1 fork with official module. #1616
- Migrate
msgfees
gov proposals to v1. #1328 - Updated metadata queries to optionally include the request and id info #1443.
The request is now omitted by default, but will be included ifinclude_request
istrue
.
The id info is still included by default, but will be excluded ifexclude_id_info
istrue
. - Removed the quicksilver upgrade handlers PR 1648.
- Bump cometbft to v0.34.29 (from v0.34.28) PR 1649.
- Add genesis/init for Marker module send deny list addresses. #1660
- Add automatic changelog entries for dependabot. #1674
- Ensure IBC marker has matching supply #1706.
Bug Fixes
- Fix ibcnet relayer creating multiple connections on restart #1620.
- Fix for incorrect resource-id type casting on contract specification #1647.
- Allow restricted coins to be quarantined #1626.
- Prevent marker forced transfers from module accounts #1626.
- Change config load order so custom.toml can override other config. #1262
- Fix the saffron and saffron-rc1 upgrade handlers to add correct ibchooks store key PR 1715.
Client Breaking
- Metadata query responses no longer include the request by default #1443.
They are still available by setting theinclude_request
flag in the requests. - The
provenanced query metadata get
command has been changed to use the newGetByAddr
query #1443.
The command can now take in multiple ids.
The output of this command reflects theGetByAddrResponse
instead of specific type queries.
The command no longer has any--include-<thing>
flags since they don't pertain to theGetByAddr
query.
The specific queries (e.g.provenanced query metadata scope
) are still available with all appropriate flags.
Dependencies
- Bump
google.golang.org/grpc
from 1.56.1 to 1.59.0 (#1624, #1635, #1672, #1685, #1689, #1710) - Bump
crazy-max/ghaction-import-gpg
from 5 to 6 (#1677) - Bump
golang.org/x/text
from 0.12.0 to 0.13.0 (#1667) - Bump
actions/checkout
from 3 to 4 (#1668) - Bump
bufbuild/buf-breaking-action
from 1.1.2 to 1.1.3 (#1663) - Bump
cosmossdk.io/math
from 1.0.1 to 1.1.2 (#1656) - Bump
github.com/google/uuid
from 1.3.0 to 1.3.1 (#1657) - Bump
golangci/golangci-lint-action
from 3.6.0 to 3.7.0 (#1651) - Bump
bufbuild/buf-setup-action
from 1.21.0 to 1.27.1 (#1610, #1613, #1631, #1632, #1642, #1645, #1650, #1694, #1711) - Bump
cometbft to v0.34.29
(from v0.34.28) (#1649) - Bump
golang.org/x/text
from 0.11.0 to 0.12.0 (#1644) - Bump
github.com/rs/zerolog
from 1.29.1 to 1.31.0 (#1639, #1691) - Bump
github.com/cosmos/ibc-go/v6
from 6.1.1 to 6.2.0 (#1629) - Bump
cosmossdk.io/errors
from 1.0.0-beta.7 to 1.0.0 (#1628) - Bump
google.golang.org/protobuf
from 1.30.0 to 1.31.0 (#1611) - Bump
docker/setup-buildx-action
from 2 to 3 (#1681) - Bump
docker/login-action
from 2 to 3 (#1680) - Bump
docker/build-push-action
from 4 to 5 (#1679) - Bump
github.com/spf13/viper
from 1.16.0 to 1.17.0 (#1695) - Bump
github.com/otiai10/copy
from 1.12.0 to 1.14.0 (#1693) - Bump
stefanzweifel/git-auto-commit-action
from 4 to 5 (#1696) - Bump
golang.org/x/net
from 0.15.0 to 0.17.0 (#1704) - Bump
bufbuild/buf-lint-action
from 1.0.3 to 1.1.0 (#1705)
Full Commit History
Release v1.16.0
v1.16.0 - 2023-06-23
Notice: When building this version of provenanced
, you MUST use go v1.20.
Version 1.16.0
of the Provenance Blockchain brings several features, improvements, and bug fixes.
A new provenanced pre-upgrade
command has been added. Cosmovisor will automatically run it during the upgrade process. If you do not use Cosmovisor, you should manually run it before restarting your node; make sure to provide the appropriate --home
for your environment.
Features
- Add support to add/remove required attributes for a restricted marker. #1512
- Add trigger module for delayed execution. #1462
- Add support to update the
allow_forced_transfer
field of a restricted marker #1545. - Add expiration date value to
attribute
#1435. - Add endpoints to update the value owner address of scopes #1329.
- Add pre-upgrade command that updates config files to newest format and sets
consensus.timeout_commit
to1500ms
PR 1594, PR 1600.
Improvements
- Bump go to
1.20
(from1.18
) #1539. - Bump golangci-lint to
v1.52.2
(fromv1.48
) #1539.- New
make golangci-lint
target created for installing golangci-lint. - New
make golangci-lint-update
target created for installing the current version even if you already have a version installed.
- New
- Add marker deposit access check for sends to marker escrow account #1525.
- Add support for
name
owner to executeMsgModifyName
transaction #1536. - Add usage of
AddGovPropFlagsToCmd
andReadGovPropFlags
cli forGetModifyNameCmd
#1542. - Bump Cosmos-SDK to
v0.46.10-pio-4
(fromv0.46.10-pio-3
) for theSendRestrictionFn
changes PR 1506. - Switch to using a
SendRestrictionFn
for restricting sends of marker funds PR 1506. - Create
rust
upgrade handlers PR 1549. - Remove mutation of store from
attribute
keeper iterators #1557. - Bumped ibc-go to 6.1.1 #1563.
- Update
marker
module spec documentation with new proto references #1580. - Bumped
wasmd
to v0.30.0-pio-5 andwasmvm
to v1.2.4 #1582. - Inactive validator delegation cleanup process #1556.
- Bump Cosmos-SDK to v0.46.13-pio-1 (from
v0.46.10-pio-4
) PR 1585.
Bug Fixes
- Bring back some proto messages that were deleted but still needed for historical queries #1554.
- Fix the
MsgModifyNameRequest
endpoint to properly clean up old index data PR 1565. - Add
NewUpdateAccountAttributeExpirationCmd
to the CLI #1592. - Fix
minimum-gas-prices
from sometimes getting unset in the configs PR 1594.
API Breaking
- Add marker deposit access check for sends to marker escrow account. Will break any current address that is sending to the
marker escrow account if it does not have deposit access. In order for it to work, deposit access needs to be added. This can be done using theMsgAddAccessRequest
tx #1525. MsgMultiSend
is now limited to a singleInput
PR 1506.- SDK errors returned from Metadata module endpoints #978.