Overview
Program |
Platform |
Description |
cardano-wallet |
linux-x86_64 |
A CLI tool to start and interact with a wallet server. See Key Features below. |
cardano-wallet.sh |
linux-x86_64 |
Auto-completion script for cardano-wallet |
cardano-wallet-launcher |
linux-x86_64 |
A commodity utility to launch a wallet server with a corresponding node backend. |
This release brings full transaction support (on Byron network) to the API and the command-line. It also contains a few minor bug fixes and documentation improvements (as well as much more descriptive and user-friendly errors from the API and the command-line).
Key Features
cardano-wallet
cardano-wallet-launcher
- A command-line interface which starts and supervise both a wallet server and a cardano-http-bridge
Known Limitations
-
⚠️ Only one address derivation scheme is supported: sequential scheme (a.k.a. Icarus' address style or, addresses à la BIP-44).
-
⚠️ So far, only one backend is supported: cardano-http-bridge (run on the Byron-OFT era, experimental stability).
-
⚠️ The wallet backend server is shipped with only an in memory storage which is volatile: restarting the server will erase the memory completely.
Bug Fixes
Ticket |
Title |
#291 |
Shuffle statistical tests sometimes fail... |
Known Issues
Ticket |
Title |
#250 |
GET v2/wallets does not list wallets from oldest to newest |
#260 |
No additional error message in case of 4xx responses |
#324 |
Bech32 occassionally fails when decoding a string with an omitted character |
#326 |
Cannot post transaction after updating wallet's passphrase |
#333 |
Sending transaction to not-valid address (yet being base58 encoded string) gives HTTP 500 -> "Something went wrong" |
#364 |
Transaction with amount 0 on http bridge fails with error HTTP 500 |
#397 |
CLI wrongly returns exit code 0 when providing not existing wallet id |
#398 |
CLI unnecessarily asks for password when posting transaction from a non-existing wallet |
#403 |
API swagger specification isn't a valid swagger file |
Installation Instruction
Please note that currently only Unix\Linux platform is supported.
-
Install cardano-http-bridge.
- Install the rust toolchain.
- In terminal run
cargo install --git https://github.com/input-output-hk/cardano-http-bridge.git
- make sure
$HOME/.cargo/bin
is on your $PATH
-
Download cardano-wallet
and cardano-wallet-launcher
and put it in the directory that is on your $PATH
, e.g. /usr/local/bin
. Make sure to add exec permissions on binary files:
chmod u+x cardano-wallet cardano-wallet-launcher
-
Start cardano-wallet-launcher --help
and see available parameters and follow instructions about how to install cardano-http-bridge
if you haven't done already in point 1.
⚠️ The wallet server & launcher both expect a NETWORK
ENV var to be available with one of the following value:
- mainnet
- testnet
- staging (not supported)
This variable commands which network the software should connect to and interact with.
Documentation
Changelog
SQLite implementation for the DB Layer
PR |
Description |
#246 |
Tidy up some of the formatting within Cardano.Wallet.DB.Sqlite. |
#247 |
Set up database connection and create tables |
#270 |
Relocate properties to DBSpec for further sharing |
#272 |
Add functions for serializing keys as text |
#276 |
Sqlite: add a test of cascading delete |
#282 |
SQLite: Add put/readPrivateKey to DBLayer |
#283 |
Sqlite: add checkpoints and transactions to DBLayer |
#288 |
Sqlite: implement withLock from DBLayer |
#293 |
Add indexes to certain SQLite table columns |
#300 |
Sqlite: enable db property tests and fix failures |
Jörmungandr High-Level Integration
PR |
Description |
#244 |
Scaffold lib/jormungandr folder |
#319 |
Include more examples from BIP-173 vectors in tests |
#245 |
Jörmungandr block format header decoding |
#248 |
Bech32 Library - port of reference implementation |
#266 |
Add 'Initial' message-decoder with config parameters |
#271 |
Use richer errors for Bech32 encoder and decoder |
#273 |
Implement Jörmungandr Transaction-message decoder |
#275 |
Docs, polish and config param 16 |
#277 |
Further enhancements to the Bech32 library. |
#284 |
Build Jörmungandr on CI - another take |
#287 |
Make CI faster especially on PR builds |
#290 |
Remove redundant job condition in travis (already at top-level) |
#296 |
Improve bech32 coveralls |
#297 |
Add Jörmungandr integration tests |
#305 |
Add genesis.yaml and instructions for how to use it |
#309 |
Change jormungandr rest port to 8081 |
#312 |
Fix Bech32 decoder + encoder |
Transaction Support
PR |
Description |
#258 |
Enable transaction support in integration tests for cardano-http-bridge |
#263 |
Integration test: Polling for wallet fixture & Better error handling |
#269 |
Fix references to 'ApiTransaction' in swagger specification |
#274 |
Implement ability to list addresses in the wallet layer, API and CLI |
#281 |
First end-to-end transaction Integration test (with http-bridge) |
#301 |
Transaction integration tests |
#317 |
Review Fee Window for Tx scenarios |
Miscellaneous / Technical Debts
PR |
Description |
#241 |
Use more natural English in the CLI usage string. |
#243 |
Start reviewing Primitive.Types docs |
#249 |
Wallet Management Remaining Endpoints: update & update passphrase |
#251 |
WALLETS_GET,LIST,DELETE integration tests |
#252 |
update 4xx responses in API spec |
#253 |
Add CLI manual to README |
#254 |
Parse name and wallet-id as argument |
#255 |
Fix warning about license-file of lib/cli/cardano-wallet-cli.cabal |
#257 |
Wallet update integration tests |
#261 |
Wallet update passphrase integration tests |
#262 |
Add bors.toml |
#264 |
Basic integration scenarios for CLI |
#267 |
Fix inconsitent response code wallet update |
#278 |
More integration tests for CLI (including minor fixes in CLI) |
#279 |
Take into account out-of-process executions for code coverage |
#285 |
Fix bors config |
#289 |
show feature availability in API specification |
#303 |
Release deployments tweaks + template |
Bugs - Sprint 19/20
PR |
Description |
#292 |
Fix Change Calculation |
#295 |
fix shuffle tests in CoinSelectionSpec once and for all |
#298 |
More Descriptive Errors (Part 1/2) |
#299 |
More Descriptive Errors (Part 2/2) |
#304 |
Remove temporary code from CLI for raw server errors + some small error fixes |
#306 |
Fix documentation export |
#307 |
When embedding the Swagger API specification, use a path that is relative to the project root |
#308 |
Increase the fluency of English language messages for API errors. |
#315 |
Update existing tests with expectations for error messages |
#318 |
fix pointer reference to 'ApiAddress' in spec + update schema for errors |
Signatures
Name |
Role |
Approval |
Matthias Benkort @KtorZ |
Technical Team Lead |
✔️ |
Piotr Stachyra @piotr-iohk |
QA Engineer |
✔️ |
Tatyana Valkevych @tatyanavych |
Release Manager |
✔️ |