Releases: cardano-foundation/cardano-wallet
v2022-10-06
This release is compatible with the Babbage Era of the Cardano network. It is 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
Fixed
-
Creating a Byron address no longer fails intermittently. If an address was not created explicitly by the user, the wallet would sometimes create it implicitly as a change address, leading to misattribution of funds in some exchange use cases. (ADP-2211, ADP-2283, PR 3528)
-
Fee calculation performance deterioration. (ADP-2144 / PR 3456)
-
Patched shared wallets have the correct address gap and address pool.
(ADP-2219, PR-3500).
Changed
-
All REST API endpoints involving transaction construction now have additional documentation to explain how the wallet handles minimum UTxO values for user-specified transaction outputs. (ADP-2250 / PR 3524)
-
Improved validation and resolution of user-provided inputs in POST /wallet/{wid}/transactions-balance. Two new errors were added:
unresolved_inputs
andinput_resolution_conflicts
. These replace behaviour that was previously undefined. (ADP-1662 / PR 3475) -
Reintroduced database blocking in light-mode, preventing concurrent API calls. (PR 3528)
Added
-
Preliminary sign, decode, and submit endpoints for shared wallets. (ADP-1850, PR-2425, PR-3499).
-
Support for new transaction workflow that makes it possible for construction, signing and submission to be performed in separate steps. This process also includes support for balancing and decoding.
(ADP-2083, PR-3449). -
Support for using scripts and non-extended keys when constructing addresses. This is in addition to the existing support for script hashes, extended keys and key hashes.
(ADP-2114, PR-3435).
Removed
API Changes
https://bump.sh/doc/cardano-wallet-diff/changes/a36a1baa-66a6-42df-a4e3-c6627d6b7a57
Show API changes
-
Added:
GET /blocks/latest/header
-
Added:
POST /shared-wallets/{walletId}/transactions-sign
-
Added:
POST /shared-wallets/{walletId}/transactions-submit
-
Modified:
GET /network/parameters
-
200
response was modified-
minimum_utxo_value
attribute was removed⚠️ Breaking⚠️
-
-
-
Modified:
POST /byron-wallets/{walletId}/transactions
-
425
response was added
-
-
Modified:
POST /shared-wallets/{walletId}/transactions-construct
-
body was modified
-
encoding
attribute was added
-
-
body was modified
-
Modified:
POST /wallets/{walletId}/transactions
-
425
response was added
-
-
Modified:
POST /wallets/{walletId}/transactions-balance
-
body was modified
-
encoding
attribute was added
-
-
400
response was modified- input_resolution_conflicts alternative was added
-
body was modified
-
Modified:
POST /wallets/{walletId}/transactions-construct
-
body was modified
-
encoding
attribute was added
-
-
body was modified
-
Modified:
POST /wallets/{walletId}/transactions-sign
-
body was modified
-
encoding
attribute was added
-
-
body was modified
Known Issues
- Light-mode currently does not work. (ADP-2285)
- Database benchmarks are failing. (ADP-2202)
FeeTooSmallUTxO
error when submitting transaction from shared wallet. (ADP-2221)- Problem with
stake-pool.sqlite
/pools-engine
sync after upgrading tocardano-wallet
v2022-08-16
and large memory usage. (ADP-2227) - 🏗
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 returnstransaction_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 `v202...
v2022-08-16
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
-
Added:
POST /shared-wallets/{walletId}/transactions-construct
-
Added:
POST /shared-wallets/{walletId}/transactions-decode
-
Modified:
GET /network/information
-
200
response was modified-
network_info
,wallet_mode
body attributes were added
-
-
-
Modified:
POST /proxy/transactions
-
425
response was added
-
-
Modified:
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 Docu... |
v2022-07-01
This release captures a first compatible version of cardano-wallet ready to be deployed, tested, and implemented in your products on the newly forked Babbage Era of the Cardano Testnet. While cardano-wallet’s feature set will continue performing as expected in most cases, we do know of some exceptions (see
This release will be followed by a release(s) addressing these known issues. If you find there are other issues please create a GitHub Issue in this repository.
Compatible with cardano-node@1.35.0
.
Changes
Added
- Support for cardano-node 1.35.0 (#3293 #3280 #3340 #3349 #3357, #3347, #3354)
- 🏗 Partial support for Babbage era / Vasil HF (#3308, #3311, #3362, #3360, #3326)
- The wallet should continue working in Babbage, with some exceptions:
⚠️ The minimum UTxO calculation could be incorrect for Babbage in some cases. This calculation is used:- within
postTransaction
:- to provide minimum ada quantities for user-specified outputs without ada;
- to compute minimum ada quantities for auto-generated change outputs;
- within
createWalletMigrationPlan
andmigrateWallet
, to compute minimum ada quantities for auto-generated outputs. - when validating requests to
balanceTransaction
.
- within
⚠️ New transaction workflow endpoints are currently biased towards deserialising and submitting transactions binaries as Alonzo transactions even in Babbage. The implications of this should be minor, as these transactions are still acceptable by the node.
balanceTransaction
does not yet support balancing transactions with total collateral or collateral return set, but will fail gracefully. #3343- Wallets are able to discover collateral return outputs in transactions. #3251 #3346 #3367
- The wallet should continue working in Babbage, with some exceptions:
Fixed
- For Babbage (and possibly Alonzo) era transactions, the API does not correctly reflect the script validity (ADP-1970, #3365)
API Changes
https://bump.sh/doc/cardano-wallet-diff/changes/f1ff267d-448f-4d65-b988-eb4df3f6356f
Show API changes
GET /network/parameters
-
200
response was modified-
eras
body attribute was modified
-
Known Issues
- Potential regression in wallet restoration (ADP-1371)
- 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)
- Listing transaction time deteriorated (even up to 3x) (ADP-691)
- 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.0
. -
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.7.1.
$ docker pull inputoutput/cardano-wallet:2022.7.1
$ docker run --rm inputoutput/cardano-wallet:2022.7.1 version
Signatures
Name | Role | Approval |
---|---|---|
Heinrich Apfelmus @HeinrichApfelmus | Haskell Engineering Lead | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Laurence Jenkins @LaurenceIO | Release Manager | ✔️ |
v2022-05-27
Compatible with cardano-node@1.34.1
.
Changes
Added
-
The
constructTransaction
endpoint now supports minting and burning of tokens (ADP-1191). See how to mint an NFT for more information. -
It's now possible to use a simpler metadata format in various endpoints that relate to transactions. (ADP-1596, PR-3253)
- In the case of
getTransaction
andlistTransaction
, the wallet will use the simple metadata format if thesimple-metadata
query flag is set. - In the case of
postTransaction
andconstructTransaction
, it's possible to use the simpler metadata format without specifying a special flag. - See the this minting transaction guide for an example of how to use this simpler format.
- In the case of
-
Transactions returned by the
getTransaction
andlistTransactions
API endpoints now have acollateral_outputs
field. For the moment, this field is always empty, but after the Vasil hard fork we will use this field to list any collateral return outputs that are associated with transactions.
(PR 3251, ADP-1715, ADP-1716, ADP-1717) -
It's now possible to change a Shelley wallet passphrase by specifying the wallet's mnemonic. Previously, it was only possible to do this by specifying the old passphrase. (ADP-1658, PR-3279)
Changed
-
The method of calculating wallet IDs for shared wallets has changed. This affects both
cardano-wallet
andcardano-addresses
. The wallet ID is now determined by the extended public account key, the payment script template, and the delegation script template if present.
(ADP-1621, PR-3275). -
Restoring a wallet now has a smaller memory footprint. (ADP-1765, PR-3274)
Fixed
-
Certain validity intervals that were mistakenly rejected are now accepted when calling
constructTransaction
. (ADP-1738, PR-3269) -
Certain API inconsistencies relating to validity and timelocks are now fixed: (PR 3249, ADP-1193)
- It’s now forbidden to pass negative values in
validity_interval
. - It’s now required to pass
invalid_before
orinvalid_hereafter
or both.
- It’s now forbidden to pass negative values in
API Changes
https://bump.sh/doc/cardano-wallet-diff/changes/215a1771-fce0-4d7d-a7b1-198272f8337c
Show API changes
-
Modified:
DELETE /stake-pools/*/wallets/{walletId}
-
202
response was modified-
collateral_outputs
body attribute was added -
mint
body attribute was removedBreaking -
metadata
body attribute was modified
-
-
-
Modified:
GET /byron-wallets/{walletId}/transactions
-
200
response was modified-
collateral_outputs
body attribute was added -
mint
body attribute was removedBreaking -
metadata
body attribute was modified
-
-
-
Modified:
GET /byron-wallets/{walletId}/transactions/{transactionId}
-
200
response was modified-
collateral_outputs
body attribute was added -
mint
body attribute was removedBreaking -
metadata
body attribute was modified
-
-
-
Modified:
GET /wallets/{walletId}/transactions
-
simple-metadata
query parameter was added -
200
response was modified-
collateral_outputs
body attribute was added -
mint
body attribute was removedBreaking -
metadata
body attribute was modified
-
-
-
Modified:
GET /wallets/{walletId}/transactions/{transactionId}
-
simple-metadata
query parameter was added -
200
response was modified-
collateral_outputs
body attribute was added -
mint
body attribute was removedBreaking -
metadata
body attribute was modified
-
-
-
Modified:
POST...
v2022-04-27
This release contains:
- Improved support for minting and burning.
- Continued development of a light mode.
- Improved transaction balancing reliability.
- Refactoring of the database and coin-selection modules.
- A host of testing improvements and miscellaneous fixes.
Compatible with cardano-node@1.34.1
.
API Changes
https://bump.sh/doc/cardano-wallet-diff/changes/c11ebb1b-39c1-40b6-96b9-610705c62cb8
Community Contributions 💞
- Export
ApiValidityBound
constructors #3114- Thanks @runeksvendsen
- Fix typos in comments and function names. #3153
- Thanks @rex4539
New Features
Light mode (🚧 under development 🚧)
See more: How to start wallet server in light mode.
- Specification of light-mode #3118
- Fix diagram rendering in light-mode specification #3131
- Add
BlockSummary
type and related changes #3143 - Docs: Improve address discovery diagram for the light mode spec #3144
- Add a
--light --blockfost-token-file
CLI options #3148 - Light NetworkLayer: watchNodeTip/currentNodeTip #3169
- Change
applyBlocks
to also acceptBlockSummary
#3172 - Light NetworkLayer: lightSync #3175
- Cardano.Wallet.Shelley.Launch.BlockfrostSpec #3176
- Fix BlockfrostSpec on Windows #3182
- Rework CLI error reporting for the --blockfrost-token-file #3184
- Light Mode: Node tip and Protocol Parameters #3189
- Update docs for
--light
mode #3191 - Light Mode: currentCardanoEra #3209
- E2E tests for light mode #3213
- Light Mode: Time Interpreter #3221
- Light mode: hardcode epoch/era conversion for the Testnet #3222
- Light mode: fetch reward account balances #3231
- Enable network info ep test in light mode suite #3234
Minting and Burning (🚧 under development 🚧)
- Add minting/burning to constructTransaction and decodeTransaction #3152
- Make decodeTx not so strict when policy key is missing #3194
- Impl signing for minting/burning in new tx flow #3199
- Minting edge cases and additional testing #3226
- Get policy id endpoint #3239
Improvements
Transaction Balancing Reliability
- Add
estimateSignedTxSize
based off ledger'sevaluateTransactionFee
#3166 - Prepare for rewriting balanceTransaction #3150
- Re-write balanceTransaction using Node.evaluateTransactionBalance #3100
- Implement
sizeOfCoin
andcostOfIncreasingCoin
#3215 - Implement
distributeSurplus
and use inbalanceTransaction
#3223 - Suggestions for PR #3215 #3224
- Generalize
distributeSurplus
. #3238 - Add more property tests for
distributeSurplus
. #3243 - Add extraCoin{In,Out} to SelectionParams #3093
- Factor out guards into helpers in balanceTransaction #3092
Coin Selection Refactoring
- Provide a wallet-specific interface for coin selection. #3109
- Fork the
Selection
type. #3111 - Make wallet responsible for determining collateral suitability #3116
- Remove use of
TxOut
fromSelection.{inputs,outputs}
#3128 - Use
(TxIn, Address)
as a unique input identifier within coin selection modules. #3149 - Generalize UTxO identifier type within
UTxOIndex
. #3154 - Generalize UTxO identifier type within
UTxOSelection
. #3155 - Parameterize UTxO identifier type in internal coin selection modules. #3157
- Remove all remaining usages of
TxOut
from coin selection implementation. #3158 - Add the
SelectionStrategy
type. #3161 - Add support for minimal coin selections #3164
- Provide shared context for common coin selection types. #3165
- Remove the need for
Proxy
when generating a dummy address. #3168 - Generalize UTxO identifiers and addresses in coin selection
Gen
modules. #3174 - Add property tests for conversion functions in
Wallet.CoinSelection
. #3177 - Remove hard-coded dependency on
txOutMax{Coin,TokenQuantity}
within coin selection modules #3197 - Remove wallet types from coin selection test suite. #3204
- Make
UTxOIndex
agnostic to the distinction between ada and non-ada assets. #3217 - Generalize
SelectionFilter
tests withinUTxOIndexSpec
. #3220
DB Refactoring
database_schema_version
table stores current database schema version. #3105- Use
modifyDBVar
instead ofputCheckpoint
inCardano.Wallet
#3108 - Introduce types
DeltaUTxO
andDeltaWallet
#3156
Miscellaneous
- Select witnesses only for unique inps #3110
- Undelegate with existing rewards #3119
- Don't require a localhost dns entry #3185
- (Not yet used) Implement new Stake Pool Ranking formulas #3190
- Adjust e2e tests for minting/burning edge cases #3236
Documentation
- Docs: Revise and clean up user guide and concepts sections #3106
- Docs: Add more info about restarting hydra jobs #3126
- Docs: Add delegation use-case and clean up existing use-cases #3138
- Docs: Fix ordering of use-cases #3139
- Docs: Managing assets #3140
- Docs: Rendering fix #3141
Testing
- Server: Update windows error codes list #3125
- Add --markdown-output and unclassified failures count to scripts/bors-stats.rb #3127
- Remove assertions for pending tx after doing submit tx (it's flaky) #3129
- Fix link to hydra in e2e tests #3133
- Timeout restoration benchmark after 20h #3134
- Prepare for rewriting balanceTransaction #3150
- E2e tests: Fix expression getting supported node tag from README #3163
- E2e test against pr #3167
- E2e tests against cached wallet db #3171
- Adjust e2e tests #3178
- E2e tests: minor test and workflow updates #3188
- E2e tests: Fix docker wallet db cache #3198
- Fix shrinker for
ProtocolParameters
. #3205 - E2e testing: Minting/burning #3207
- Speed up
TransactionSpec.signTransaction
. #3211 - Attempt to fix "Gave up!" problem in prop_balanceTransactionUnresolvedInputs #3212
- Get node db from aws in Windows e2e flow #3216
- Fix for fingerprint in e2e test #3227
- Fix typo in test #3228
- Fix JSON encoding warnings in golden tests. #3247
Resolved Issues
Bug Fixes
- Fix for the
listAssets
API which shows assets unrelated to a wallet #3132 - Fix decode tx in plutus minting #3218
- ValueNotConservedUTxO: Transaction seems balanced incorrectly in case when less than minUtxOValue is left on the wallet #3100
Miscellaneous Build Fixes
- nixpkgs: 21.05 -> 21.11 #3130
- nix: Fix source filtering on latency benchmark #3135
- Better CI badge for Hydra #3137
- Bump cardano-node to 1.34.1 #3160
- Drop support for
stack build
#3170 - Quick fix: Constrain hedgehog < 1.1 #3192
- Fix cardano-wallet nightly build #3200
- Replace stack invocations in documentation with cabal #3201
- Update haskell.nix version now that we can cross-compile secp256k1 #3203
- GitHub Actions: Upgrade to windows-2022 #3208
- Ensure nightly test advances to the correct commit #3210
- Ensure 1.34.1 node bump is reflected in cabal.project #3229
- Use a patched openapi3 lib #3244
Known Issues
- Potential regression in wallet restoration (ADP-1371)
- 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)
- Listing transaction time deteriorated (even up to 3x) (ADP-691)
- 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.34.1
. -
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.4.27.
$ docker pull inputoutput/cardano-wallet:2022.4.27
$ docker run --rm inputoutput/cardano-wallet:2022.4.27 version
Signatures
Name | Role | Approval |
---|---|---|
Rodney Lorrimar @rvl | Technical Team Lead | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Laurence Jenkins @LaurenceIO | Release Manager | ✔️ |
v2022-01-18
This release adds compatibility with cardano-node@1.33.0
.
New Features
Improvements
- Refactors and preparatory work for incremental database updates of sequential address pools. #3073 #3068 #3056 #3048
Quality Improvements
- Testing improvements for new transaction workflow. #3022 #3065 #3078
- End-to-end test suite enhancements. #3067 #3079
- Turned on heap profiling in restoration benchmarks. #3061
Known Issues
- Time taken to restore an empty wallet is about 10-20% longer since v2021-12-15. (ADP-1371)
ValueNotConservedUTxO
: Transaction seems balanced incorrectly in case when less thanminUTxOValue
is left on the wallet. (ADP-1286)- Occasional invalid transaction error (
MaxTxSizeUTxO
) on wallets with large 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 returnstransaction_is_too_big
. (ADP-772) - Fee estimation slowness (up to 4x slower when there are many wallets, comparing with old selection algorithm). (ADP-702)
- Listing transaction time deterioration (even up to 3x). (ADP-691)
- Wallet restoration time deterioration 2x compared to
v2021-01-28
. (ADP-690) - Wallet disappears after migration from
v2021-09-09
tov2021-09-29
when there are pending transactions. (ADP-1224) - Icarus wallets restoration is ~3x slower than Random/Shelley. (ADP-785)
- Multi-address transactions sometimes result in an internal server error. (ADP-571)
- error
restoreBlocks: given chain isn't a valid continuation
when creating new wallets shortly after startup. (ADP-1148)
Documentation
📕 | 💻 | 🐳 |
---|---|---|
API Documentation | CLI Manual | Docker Manual |
Installation Instructions
-
Install
cardano-node@1.33.0
. -
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.1.18.
$ docker pull inputoutput/cardano-wallet:2022.1.18
$ docker run --rm inputoutput/cardano-wallet:2022.1.18 version
Signatures
Name | Role | Approval |
---|---|---|
Rodney Lorrimar @rvl | Technical Team Lead | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Laurence Jenkins @LaurenceIO | Release Manager | ✔️ |
v2021-12-15
Compatible with cardano-node@1.32.1
.
API Changes
- Modified:
GET /addresses/{addressId}
- Response modified:
200
- Body attribute added:
address_type
- Modified:
POST /wallets/{walletId}/transactions-decode
- Response modified:
202
- Body attributes added:
assets_minted, assets_burned, certificates
New Features
- Bump cardano-node dependency to 1.32.1. #3050
- Bump cardano-addresses dependency to 3.7.0, adding the
address_type
field inGET /addresses/{addressId}
. #3063
Improvements
- Refactor DBLayer to use in-memory Checkpoints #2942 #3046
- Partial support for minting and burning in the construct transaction endpoint. #3029 #3025 #3014
- Enhance correctness and functionality of the construct and decode transaction endpoints. #3028 #3021 #3010 #3026 #3032
- Improve types for
Coin
andTokenQuantity
. #3034 #3039 - Bump bech32 dependency to v1.1.2 #3018
- Various improvements to test-suites. #3052 #3042 #3036 #3033 #2996
- Various improvements to the end-to-end test suite. #3058 #3049 #3040 #3031 #3027 #3000
- Miscellaneous minor build and documentation fixes. #3062 #3060 #3045 #3030 #3020
Resolved Issues
- Fix broken build from cardano-ledger-specs repo renaming. #3055
- Retry connection to node on MuxSDU*Timeout error. #3053 (ADP-1301)
- Fix nightly wallet restoration benchmark. #3051
- Change
aux
dir toextra
to fix git checkout on Windows. #3043 - Fix wallet state transition functions to properly account for script validation failures. #3037
- Tighten criteria for accepting Shelley or Byron addresses in REST API. #3019 (ADP-1280)
Known Issues
- ValueNotConservedUTxO: Transaction seems balanced incorrectly in case when less than minUtxOValue is left on the wallet (ADP-1286)
- 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)
- Listing transaction time deteriorated (even up to 3x) (ADP-691)
- 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)
- Icarus wallets restoration is ~3x slower than random/shelley (ADP-785)
- Multi-addresses transactions sometimes result in an internal server error. (ADP-571)
- error "restoreBlocks: given chain isn't a valid continuation" when quickly creating new wallets after startup (ADP-1148)
Documentation
📕 | 💻 | 🐳 |
---|---|---|
API Documentation | CLI Manual | Docker Manual |
Installation Instructions
-
Install
cardano-node@1.32.1
. -
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 2021.12.15.
$ docker pull inputoutput/cardano-wallet:2021.12.15
$ docker run --rm inputoutput/cardano-wallet:2021.12.15 version
Signatures
Name | Role | Approval |
---|---|---|
Rodney Lorrimar @rvl | Technical Team Lead | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Laurence Jenkins @LaurenceIO | Release Manager | ✔️ |
v2021-11-11
Compatible with cardano-node@1.30.1
.
API Changes
- Updated:
POST /byron-wallets/{walletId}/transactions-sign
Body attribute removed: withdrawal- Response modified:
202
Body attributes removed: body, witnesses
- Response modified:
- Updated:
GET /network/parameters
- Response modified:
200
Body attribute added:minimum_collateral_percentage
- Response modified:
- Updated:
POST /wallets/{walletId}/transactions-sign
Body attribute removed: withdrawal- Response modified:
202
Body attributes removed: body, witnesses
- Response modified:
- Added:
POST /wallets/{walletId}/transactions-decode
- Updated:
POST /wallets/{walletId}/transactions-balance
- Body attribute added:
redeemers
Body attribute removed: signatories
Body attribute modified: transaction - Response modified:
202
Body attributes removed: coin_selection, fee
- Body attribute added:
Resolved issues
- Wallets disappear when node-connection is lost (ADP-871)
- Wallet workers die while syncing when there are many wallets (ADP-1013)
- Intermittent 500 Internal Server Error on GET or DELETE Wallet (ADP-798)
New Features
- Balance transaction endpoint. #3012 #2906 #2993 #2992 #2989 #2987 #2974 #2972 #2970 #2968 #2967 #2964 #2962 #2948 #2952
- Selection of collateral in transactions. #2956 #2955 #2941 #2940 #2939 #2938 #2936 #2935 #2934
- Sign transaction endpoint. #2958 #2949 #2950 #2943 #2911
- Decode serialised transaction endpoint. #3003 #2995 #2977 #2946
- Expose min fee parameter from node. #2920
Improvements
- Library
dbvar
for delta encodings and mutableDBVar
variable. #2841 - Refactored chain following. #2750
- User manual and developer info moved to https://input-output-hk.github.io/cardano-wallet/. #3011 #3007 #3006
Quality Improvements
- Upgrade to GHC 8.10.7. #2969
- Test coverage improvements. #3008 #3004 #3002 #2999 #2998 #2986 #2988 #2985 #2983 #2979 #2960 #2953 #2947 #2945 #2944
- Other test suite changes. #2961 #2973 #2965
- Dev environment improvements. #3001 #2990 #2833
Known Issues
- Nightly cabal build is failing (ADP-1263)
- Different inputs are being shown on construct tx ep response vs. decoded CBOR (ADP-1256)
- Fee on the wallet may be not be correctly reported on construct ep (ADP-1202)
- 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)
- Listing transaction time deteriorated (even up to 3x) (ADP-691)
- 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)
- Icarus wallets restoration is ~3x slower than random/shelley (ADP-785)
- Multi-addresses transactions sometimes result in an internal server error. (ADP-571)
- error "restoreBlocks: given chain isn't a valid continuation" when quickly creating new wallets after startup (ADP-1148)
Documentation
📕 | 💻 | 🐳 |
---|---|---|
API Documentation | CLI Manual | Docker Manual |
Installation Instructions
-
Install
cardano-node@1.30.1
. -
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 2021.11.11.
$ docker pull inputoutput/cardano-wallet:2021.11.11
$ docker run --rm inputoutput/cardano-wallet:2021.11.11 version
Signatures
Name | Role | Approval |
---|---|---|
Rodney Lorrimar @rvl | Technical Team Lead | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Laurence Jenkins @LaurenceIO | Release Manager | ✔️ |
Compatibility with cardano-node 1.30.1
Compatible with cardano-node@1.30.1
.
API Changes
- Updated: POST /byron-wallets/{walletId}/transactions-sign (
⚠️ under development, may not behave as expected)- Body attribute added: withdrawal
- Updated: GET /byron-wallets/{walletId}/transactions
- Response modified: 200
- Body attribute added: script_validity
- Response modified: 200
- Updated: POST /byron-wallets/{walletId}/transactions
- Response modified: 202
- Body attribute added: script_validity
- Response modified: 202
- Updated: GET /byron-wallets/{walletId}/transactions/{transactionId}
- Response modified: 200
- Body attribute added: script_validity
- Response modified: 200
- Updated: POST /byron-wallets/{walletId}/migrations
- Response modified: 202
- Body attribute added: script_validity
- Response modified: 202
- Updated: GET /network/parameters
- Response modified: 200
- Body attribute added: execution_unit_prices
- Response modified: 200
- Updated: DELETE /stake-pools/*/wallets/{walletId}
- Response modified: 202
- Body attribute added: script_validity
- Response modified: 202
- Updated: PUT /stake-pools/{stakePoolId}/wallets/{walletId}
- Response modified: 202
- Body attribute added: script_validity
- Response modified: 202
- Updated: POST /wallets/{walletId}/assets
- Response modified: 202
- Updated: GET /wallets/{walletId}/transactions
- Response modified: 200
- Body attribute added: script_validity
- Updated: POST /wallets/{walletId}/transactions
- Response modified: 202
- Body attribute added: script_validity
- Updated: GET /wallets/{walletId}/transactions/{transactionId}
- Response modified: 200
- Body attribute added: script_validity
- Response modified: 200
- Updated: POST /wallets/{walletId}/transactions-sign (
⚠️ under development, may not behave as expected)- Body attribute added: withdrawal
- Updated: POST /wallets/{walletId}/migrations
- Response modified: 202
- Body attribute added: script_validity
- Response modified: 202
- Added: POST /wallets/{walletId}/transactions-balance (
⚠️ under development, may not behave as expected)
Improvements
- Compatibility with cardano-node 1.30.1 #2928 #2898
- Documentation improvements
- Misc testing and process improvements
Known Issues
- Occasional invalid transaction error (MaxTxSizeUTxO) on wallets with big amounts of assets (ADP-1052)
- Wallet workers die while syncing when there are many wallets (ADP-1013)
- 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)
- Listing transaction time deteriorated (even up to 3x) (ADP-691)
- Wallet restoration time deteriorated 2x in v2021-01-28 (ADP-690)
- Icarus wallets restoration is ~3x slower than random/shelley (ADP-785)
- Multi-addresses transactions sometimes result in an internal server error. (ADP-571)
- error "restoreBlocks: given chain isn't a valid continuation" when quickly creating new wallets after startup (ADP-1148)
- Worse error-message when submitting invalid transaction to /proxy/transactions (ADP-1145)
Documentation
📕 | 💻 | 🐳 |
---|---|---|
API Documentation | CLI Manual | Docker Manual |
Installation Instructions
-
Install
cardano-node@1.30.1
. -
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 2021.9.29.
$ docker pull inputoutput/cardano-wallet:2021.9.29
$ docker run --rm inputoutput/cardano-wallet:2021.9.29 version
Signatures
Name | Role | Approval |
---|---|---|
Johannes Lund @Anviking | Software Engineer | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Laurence Jenkins @LaurenceIO | Release Manager | ✔️ |
v2021-09-09
Compatible with cardano-node@1.29.0
.
API Changes
N/A
Resolved Issues
- Fix
decodeUnsignedTx
to correctly try previous eras #2874 - Change bech32 prefix for 1854h purpose (shared wallets) #2870
Quality Improvements
- Add roundtrip JSON encoding test for
ApiT TxScriptValidity
#2880 - Move counterexample combinators to
Test.QuickCheck.Extra
#2876 - Add pass to go-jira setup instructions #2871
- jira: update endpoint URL #2869
- Make assertion failures more descriptive in
BalanceSpec
. #2868 - Strengthen tests for
applyTx
andfilterByAddress
. #2867 - scripts/make_release.sh: handle errors when jira command fails #2863
- Fix
TxMetaText
generators. #2862 - Provide integrated coin selection module #2859
- Add (Instance of #ISSUE) re-write rule for bors comments #2858
- Fix leaks of ≈21 more wallets in integration tests #2857
- Adjust chain-following code to account for collateral inputs #2856
- Move important UTxO state transition functions to the top-level and test them #2848
Known Issues
- docker-compose not running properly on OSX `failed to create symbolic link '/cardano-wallet/data: File exists' (ADP-1115)
- Cannot list pools when node is too out of sync (ADP-1072)
- Occasional invalid transaction error (MaxTxSizeUTxO) on wallets with big amounts of assets (ADP-1052)
- Wallet workers die while syncing when there are many wallets (ADP-1013)
- 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)
- Listing transaction time deteriorated (even up to 3x) (ADP-691)
- Wallet restoration time deteriorated 2x in v2021-01-28 (ADP-690)
- 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.29.0
. -
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 2021.9.9.
$ docker pull inputoutput/cardano-wallet:2021.9.9
$ docker run --rm inputoutput/cardano-wallet:2021.9.9 version
Signatures
Name | Role | Approval |
---|---|---|
Rodney Lorrimar @rvl | Technical Team Lead | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Laurence Jenkins @LaurenceIO | Release Manager | ✔️ |