Addresses derivation paths & multisig foundations
This release contains API enhancements, and several bug fixes.
Compatible with cardano-node@1.25.1
.
New Features
- API: Include derivation paths in the Address List endpoint and POST address endpoint for Byron wallet. #2598 #2605
- API: Add bech32 encodings of key hashes to the Inspect Address endpoint. #2562 #2606
Improvements
-
API: Hash Tx metadata before signing in the Sign Metadata endpoint, in accordance with recent updates to CIP-15. #2589
-
Preparatory work for the multi-signature wallet feature. #2508 #2604
-
Use a connection pool for wallet database connections, instead of a single shared connection per wallet. #2416
-
Slightly improve the
cardano-wallet
CLI option help page. #2559 -
Asset metadata JSON schema updates - fully remove the "unit" field. #2546 #2557 #2572
API Changes
- Updated:
GET /addresses/{addressId}
- Response modified:
200
- Body attributes added:
spending_key_bech32
,stake_key_bech32
,script_hash_bech32
- Body attributes added:
- Response modified:
- Updated:
GET /byron-wallets/{walletId}/assets
- Response modified:
200
- Response modified:
- Updated:
GET /byron-wallets/{walletId}/assets/{policyId}/{assetName}
- Response modified:
200
- Response modified:
- Updated:
GET /byron-wallets/{walletId}/assets/{policyId}
- Response modified:
200
- Response modified:
- Updated:
GET /byron-wallets/{walletId}/addresses
- Response modified:
200
- Body attribute added:
derivation_path
- Body attribute added:
- Response modified:
- Updated:
POST /byron-wallets/{walletId}/addresses
- Response modified:
201
- Body attribute added:
derivation_path
- Body attribute added:
- Response modified:
- Updated:
GET /wallets/{walletId}/assets
- Response modified:
200
- Response modified:
- Updated:
GET /wallets/{walletId}/assets/{policyId}/{assetName}
- Response modified:
200
- Response modified:
- Updated:
GET /wallets/{walletId}/assets/{policyId}
- Response modified:
200
- Response modified:
- Updated:
GET /wallets/{walletId}/addresses
- Response modified:
200
- Body attribute added:
derivation_path
- Body attribute added:
- Response modified:
- Updated:
POST /wallets/{walletId}/signatures/{role}/{index}
- Response modified:
200
- Signature scheme modified.
- Response modified:
Quality improvements
-
cardano-wallet now builds with GHC 8.10.4. There is no guarantee that it will continue to build with GHC 8.6.5. #2533
-
Logging improvements: Error messages are now logged to stderr instead of stdout. Some log message for a few severities were adjusted. Better logging of tx submission. #2571 #2581 #2586
-
local-cluster: Change MA Faucet to use 24-word mnemonics #2569
-
Regenerate expired TLS certs for unit tests #2593
Resolved Issues
-
Prevent situations where the wallet could have created invalid transactions with too many assets. #2548 #2552 #2555 #2560
-
Fix metadata incoherence when switching stake pool metadata sources. #2567
-
API: Add the Content-Type header to all structured error responses. #2597
-
API: When coin selection fails, fix the error message, which was showing an incorrect calculation of the missing amount. #2542
Known Issues
- Wallet remains stuck at 61% on shelley-qa (ADP-848)
- Nightly restore benchmark runs out of memory (ADP-846)
- 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)
- Must retry LocalTxSubmission for all pending transactions (ADP-764)
- 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.25.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.4.8.
$ docker pull inputoutput/cardano-wallet:2021.4.8-shelley
$ docker run --rm inputoutput/cardano-wallet:2021.4.8-shelley version
Signatures
Name | Role | Approval |
---|---|---|
Matthias Benkort @KtorZ | Technical Architect | ✔️ |
Rodney Lorrimar @rvl | Technical Team Lead | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Laurence Jenkins @LaurenceIO | Release Manager | ✔️ |