Cardano Wallet Backend - Byron Wallets & Stake Pools
Pre-release
Pre-release
Overview
Program | Platform | Description |
---|---|---|
cardano-wallet-jormungandr.tar.gz |
linux-x86_64 |
A CLI tool to start and interact with a wallet server using Jörmungandr as a chain producer. See Main Features below. |
cardano-wallet-jormungandr.sha256 |
N/A |
Checksum for the executable in cardano-wallet-jormungandr.tar.gz |
cardano-wallet.sh |
linux-x86_64 |
Auto-completion script for cardano-wallet (works for all flavours) |
Main Features
cardano-wallet
-
A command-line interface which exposes the following features (see CLI manual):
- Create and Delete wallet
- Get details of a particular wallet
- List all known wallets
- Generate BIP-39 mnemonic sentence (English) of various sizes
- Update wallet metadata
- Create and submit transactions from a single wallet
- List known (used or unused) addresses of a wallet
- Estimate transaction fee
- Visualize wallet's UTxO distribution
- Update wallet encryption passphrase
- List transaction history
- Submit already signed transactions
- Serve wallet against
Jörmungandr
- Launch wallet against
Jörmungandr
- Get network information
- List available stake pools, ordered by apparent performance
-
A web server which exposes the following features (see API Documentation below):
- Create and delete wallet
- Get details of a particular wallet
- List all known wallets
- Update wallet metadata & wallet encryption passphrase
- Create and submit transactions from a single wallet
- List known (used or unused) addresses of a wallet
- API and server logs
- Estimate transaction fee
- Visualize wallet's UTxO distribution
- List transaction history
- Submit already signed transactions
- Get network information
- Create Byron wallets
- Delete Byron wallets
- Get and List Byron wallets
- Forget pending transaction of Shelley wallets
- List transaction history of Byron wallets
- Forget pending transaction of a Byron wallet
- Migrate Byron wallets to Shelley wallets
- List available stake pools, ordered by apparent performance
-
Node.js-compatible IPC server with custom protocol
-
Data-persistence to disk via SQLite
-
Support for Ouroboros Genesis/Praos and proper chain following in the events of chain switches
Known Limitations
⚠️ Only Jörmungandr Genesis/Praos node is supported.
Bug Fixes
- Improper shutdown of iohk-monitoring switchboard #851
- Error reported in the log after deleting a wallet #807
- Providing -- --config node_config.yaml on launch makes wallet exit ugly #848
- Pending txs when listed on the wallet have
inserted_at
field instead ofpending_since
#935 - Test failures -> Cardano.Wallet.Primitive.Types.Ranges #917
Known Issues
- "Invalid Address first byte": error message could be more user-friendly #953
- CentOS, RHEL 6+ and SuSe Linux defect for libcrypto.so.1.0.0 #923
- --logging-config FILE.YAML more info and tests #961
Installation Instructions
Please note that currently only Unix\Linux platform is supported.
with Jörmungandr@eb0b7bb1
- Install jormungandr@eb0b7bb1 from the source.
eb0b7bb14af8e573a44bf38b0a683ba2d4579c7d
) which is ahead of and incompatible with 0.7.0-rc4
- Download
cardano-wallet-jormungandr.tar.gz
and uncompress it in a directory that is on your$PATH
, e.g./usr/local/bin
.
$ curl -L https://github.com/input-output-hk/cardano-wallet/releases/download/v2019-11-06/cardano-wallet-jormungandr.tar.gz | tar xz -C $HOME/.local/bin
- (optional) Download and install bash/zsh auto-completion script:
$ curl -L https://github.com/input-output-hk/cardano-wallet/releases/download/v2019-11-06/cardano-wallet.sh > /etc/bash_completion.d/cardano-wallet.sh
$ source /etc/bash_completion.d/cardano-wallet.sh
- Start
cardano-wallet --help
and see available parameters.
Documentation
Link | Audience |
---|---|
API Documentation | Users of the Cardano Wallet API |
Haddock Documentation | Haskell Developers using the cardano-wallet as a library |
CLI Manual | Users of the Cardano Wallet API |
Weekly Reports
Changelog
Byron Wallet Support
PR | Description
-- | --
#966 | More tests for byron wallets migration, in particular migrating from big wallets
#960 | Test that `migrateByronWallet` appropriately deposits funds into a target wallet.
#952 | review golden tests for legacy transaction and generate witnesses using jcli
#950 | Test that `migrateByronWallet` migrates funds correctly.
#916 | Byron migration integration tests
#915 | Remove length invariant from `Cardano.Wallet.Jormungandr.Binary.putAddress`.
#911 | Fix Arithmetic Underflow in Migration Coin Selection
#890 | Add `deleteByronTransaction` endpoint.
#884 | More integration tests for Byron wallets
#882 | Add handlers for Byron migration
#878 | Support for legacy UTxO witness in Jörmungandr
#873 | Byron wallet transaction list integration tests
#871 | Special coin selection function for handling migration of legacy wallets
#849 | Enable faucet random wallets
#844 | Add and 'implement' "listByronTransactions" to the API
Create Delegation Certificate
PR | Description
-- | --
#954 | Make `core.Tx` a concrete type and remove `DefineTx` and `PersistTx`
#946 | extend FeePolicy definition
#932 | Extend binary format for stake delegation tx
#920 | Api types for delegation endpoints
#907 | Fix `FromText` instance for `Double` (and `FeePolicy`).
#889 | Correct `ToText` and `FromText` instances for `FeePolicy`.
#634 | Remove cardano-wallet-http-bridge
Forget Pending Transaction
PR | Description
-- | --
#939 | few more forget tx tests for CLI
#930 | Forget pending tx endpoint spec update
#912 | more 'forget tx' tests via API
#879 | Porting the rest of forget pending tx integration tests to CLI
#867 | Wrap-up forgetting pending tx
#853 | Add removePendingTx to Cardano.Wallet.DB and corresponding testing
List Stake Pool
PR | Description
-- | --
#940 | Add more stake-pools in the CI setup
#937 | Review responsibility of getMessage vs getTransaction in Jörmungandr.Binary
#933 | Don't store wallet syncProgress in DB
#928 | Test that monitorStakePools resumes correctly after being killed
#924 | Prototype implementation of approximate pool performance
#919 | Test stake-pool metrics on extremely short epochs
#910 | Review stake pool worker creation
#881 | Connect Pool DB with Api
#876 | Implement chain follower for the stake pool metrics
#875 | Add readCursor to Pool.DB
#870 | Add FollowAction to allow retrying current step
#869 | review exception handling in chain follower and better handle asynchronous exceptions
#868 | store 'StakeDistribution' in the database, implement put & read ops
#861 | Measure intersection hit rate in chain following tests
#860 | Tweak withinSameTip
#859 | Relocate C.W.Jormungandr.BlockHeaders to C.W.Network.BlockHeaders
#858 | Store full BlockHeader with stake pool instead of only slot ids
#856 | implement 'withinSameTip' = to retry an action if the tip has changed while executing it
#855 | Implement combineMetrics for StakePools
#854 | Rename Cardano.Wallet.StakePool.Metrics to Cardano.Pool.Metrics
#842 | Add `NetworkLayer.stakeDistribution` and change types of response
Support Delegated Addresses
PR | Description
-- | --
#955 | hd derivation reward accounts
#948 | Add `reward` field to `ApiWallet` type.
#942 | Address Pool work with key/address fingerprints
#941 | Property tests for 'InspectAddress' on Shelley keys / addresses
#926 | Move address construction, encoding and decoding back to cardano-wallet-core
Usability & Compatibility
PR | Description
-- | --
#958 | nix: Add necessary test data files to windows testing bundle
#957 | cli: ANSI colour for windows 10, and easier utf-8 setup
#951 | Jormungandr 0.7.0 rc4
#945 | Jormungandr 0.7.0-rc3
#944 | Integration tests: logging is shut down when CLI finished
#938 | Jörmungandr 0.7.0-rc1 -> 0.7.0-rc2
#929 | use IOHK organization to host persistent fork
#918 | Fix Sqlite DB on Windows
#914 | Fix text locale encoding issues on windows
#909 | Jormungandr 0.7.0-rc1
#906 | nix: Update windows jormungandr version and the instructions
#905 | Fix error msg when providing incorrect wallet id
#888 | Update Haskell.nix
#887 | Wait an hour for the Jormungandr REST API to start
#886 | cardano-wallet-jormungandr: tweak error message style
#885 | tests: Add aroundAll helper function
#883 | Fix process cleanup in cardano-wallet-jormungandr:tests:integration
#880 | Jormungandr 0.7.0
#874 | cabal.project: Make it build
#872 | jormungandr: 0.6.1 -> 0.6.5
#864 | nix: Provide derivations for Daedalus installer
#862 | jormungandr launch: use --rest-listen instead of generating config.yaml
#852 | CLI: Always shutdown logging, last thing before exiting
#838 | Add --listen-address=127.0.0.1 option
#766 | Run tests in nix release build
Miscellaneous
PR | Description
-- | --
#967 | bump versions to 2019.11.6
#943 | Produce user-friendly CLI error on failure to decode a transaction ID
#936 | Test for #935 - Pending tx should have pendingSince in the list tx response
#927 | Fix range tests by generating non-singleton ranges directly.
#865 | Temporarily turn off automated CI checks for logging
Signatures
Name | Role | Approval |
---|---|---|
Matthias Benkort @KtorZ | Technical Team Lead | ✔️ |
Piotr Stachyra @piotr-iohk | QA Engineer | ✔️ |
Tatyana Valkevych @tatyanavych | Release Manager | ✔️ |