This release is compatible with the Babbage Era / Vasil HF of the Cardano network, ready to be deployed, tested, and implemented in your products.
However, some features that are specific to the Babbage Era are still under construction, see 🏗 below.
Compatible with cardano-node@1.35.3
.
Changes
Added
- Support for cardano-node 1.35.3 (PR 3382, PR 3404, PR 3421, PR 3428).
- POST /addresses now also supports constructing addresses from verification key hashes (
stake_vkh
,addr_vkh
) and does not require the full keys anymore (PR 3420). - Support for network identification in GET /network/information for fields
protocol_magic
andnetwork_id
. (PR 3397). - Support for post transaction in light-mode. POST /wallets/{walletId}/transactions-submit now works in light-mode (PR 3418). However, there are two differences to node-mode
- We do not block and retry like we do with node
- A 425 is returned if blockfrost is returning it in case of mempool full
- GET /network/information now reports a
wallet_mode
in the response reflecting the flag mode in the server CL arguments (PR 3419). - Added documentation on the security model of cardano-wallet (PR 3396).
Changed
-
The wallet now uses the Cardano API
calculateMinimumUTxO
function for all minimum UTxO calculations. This ensures that as we transition from the Alonzo era to the Babbage era, the wallet and ledger minimum UTxO validation rules will continue to be consistent with one another. (See: ADP-1978, ADP-2039, PR 3368, PR 3388, PR 3416, PR 3422, PR 3423, PR 3426)Details:
- When using the wallet to build or balance a transaction, any user-specified payment outputs will be subject to the same minimum UTxO validation rule as the ledger.
- The minimum UTxO validation rule is era-dependent:
- In the Alonzo era:
- the validation rule depends on the
coinsPerUTxOWord
protocol parameter.
- the validation rule depends on the
- In the Babbage era:
- the validation rule depends on the
coinsPerUTxOByte
protocol parameter.
- the validation rule depends on the
- In the Alonzo era:
- The wallet will only reject an ada quantity that is too low if the ledger would also reject that ada quantity.
- As with previous versions of the wallet, if validation fails, then the wallet will return an
HTTP 403 Forbidden
utxo_too_small
error. - This validation rule is used in the following end points:
- The definition of the field
minimum_utxo_value
in GET /network/parameters has been revised — it now reports the absolute minimum; any actual UTxO value will likely need to be higher in order to be accepted by the Cardano ledger.
-
Transactions which are valid in both Alonzo an Babbage are now signed, balanced and submitted in the current node era, instead of always in Alonzo (PR 3391).
Fixed
- Current slotting parameters now are reported correctly in light-mode (PR 3415).
- Reduce database blocking in light-mode, allowing concurrent API requests again (PR 3399).
API Changes
https://bump.sh/doc/cardano-wallet-diff/changes/bb984355-1995-46a0-8343-a8440baa5eaf
Show API changes
POST /shared-wallets/{walletId}/transactions-construct
POST /shared-wallets/{walletId}/transactions-decode
GET /network/information
200
response was modified
network_info
, wallet_mode
body attributes were added
POST /proxy/transactions
425
response was added
POST /wallets/{walletId}/transactions-submit
425
response was added
Known Issues
- Fee calculation performance deterioration (ADP-2144)
- 🏗
balanceTransaction
does not yet support balancing transactions with total collateral or collateral return set, but will fail gracefully (ADP-1684, ADP-1685) - 🏗
balanceTransaction
does not yet fully support balancing transactions with reference inputs or inline datums (ADP-1655) - Occasional invalid transaction error (MaxTxSizeUTxO) on wallets with big amounts of assets (ADP-1052)
- High memory usage observed in SPO testnet wallet (ADP-776)
- Rare SQLite3 constraint errors when making transactions (ADP-773)
- On really large wallets, postTransaction is slow and sometimes returns transaction_is_too_big (ADP-772)
- Fee estimation slowness (up to 4x slower when there are many wallets, comparing with old selection algorithm) (ADP-702)
- Wallet restoration time deteriorated 2x in v2021-01-28 (ADP-690)
- Wallet disappears after migration from v2021-09-09 to v2021-09-29 when there are pending transaction (ADP-1224)
- Error "restoreBlocks: given chain isn't a valid continuation" when quickly creating new wallets after startup (ADP-1148)
- Icarus wallets restoration is ~3x slower than random/shelley (ADP-785)
- Multi-addresses transactions sometimes result in an internal server error. (ADP-571)
Documentation
📕 | 💻 | 🐳 |
---|---|---|
API Documentation | CLI Manual | Docker Manual |
Installation Instructions
-
Install
cardano-node@1.35.3
. -
Download the provided
cardano-wallet
for your platform, and uncompress it in a directory that is on your$PATH
, e.g./usr/local/bin
. Or%PATH%
on Windows. -
Start
cardano-wallet --help
and see available parameters.
Docker
Pull from DockerHub and verify the version matches 2022.8.16.
$ docker pull inputoutput/cardano-wallet:2022.8.16
$ docker run --rm inputoutput/cardano-wallet:2022.8.16 version
Signatures
Name | Role | Approval |
---|---|---|
Heinrich Apfelmus @HeinrichApfelmus | Haskell Engineering Lead | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Laurence Jenkins @LaurenceIO | Release Manager | ✔️ |