Сryptocurrency development analysis

Description
This Pr
— reworks the SQlite with 2 additional columns for inputs: The TxId and index of the pointed output.
— changes primary keys in SQlite.
— uses putTxMeta for Pending and Foreign Txs.

## Linked issue
CBR-375
To conclude this task incoming Txs need to be tracked.

## Type of change

— [ ] 🐞 Bug fix (non-breaking change which fixes an issue)
— [x] 🛠 New feature (non-breaking change which adds functionality)
— [ ] ⚠️ Breaking change (fix or feature that would cause existing functionality to change)
— [ ] 🏭 Refactoring that does not change existing functionality but does improve things like code readability, structure etc
— [ ] 🔨 New or improved tests for existing code
— [ ] ⛑ git-flow chore (backport, hotfix, etc)

## Developer checklist

— [ ] I have read the [style guide](https://github.com/input-output-hk/cardano-sl/blob/develop/docs/style-guide.md) document, and my code follows the code style of this project.
— [ ] If my code deals with exceptions, it follows the [guidelines](https://github.com/input-output-hk/cardano-sl/blob/develop/docs/exceptions.md).
— [ ] I have updated any documentation accordingly, if needed. Documentation changes can be reflected in opening a PR on [cardanodocs.com](https://github.com/input-output-hk/cardanodocs.com), amending the inline [Haddock](https://www.haskell.org/haddock/) comments, any relevant README file or one of the document listed in the [docs](https://github.com/input-output-hk/cardano-sl/tree/develop/docs) directory.
— [ ] CHANGELOG entry has been added and is linked to the correct PR on GitHub.

## Testing checklist
— [ ] I have added tests to cover my changes.
— [ ] All new and existing tests passed.

## QA Steps
## Screenshots (if available)
You can view, comment on, or merge this pull request online at:

https://github.com/input-output-hk/cardano-sl/pull/3407

— Commit Summary —

* [CBR-375] adds unresolved inputs in Sqlite
* [CBR-375] Add putTxMeta in Kernel functions
* Adds new WalletLayer endpoint which returns a V1.Transaction from a TxMeta
* [CBR-375] Uses WalletLayer.getTxFromMeta in the handlers
* [CBR-375] Fixes tests

— File Changes —

M wallet-new/src/Cardano/Wallet/API/V1/Handlers/Transactions.hs (22)
M wallet-new/src/Cardano/Wallet/Kernel.hs (12)
M wallet-new/src/Cardano/Wallet/Kernel/DB/Sqlite.hs (301)
M wallet-new/src/Cardano/Wallet/Kernel/DB/TxMeta/Types.hs (31)
M wallet-new/src/Cardano/Wallet/Kernel/Transactions.hs (80)
M wallet-new/src/Cardano/Wallet/WalletLayer.hs (10)
M wallet-new/src/Cardano/Wallet/WalletLayer/Kernel.hs (1)
M wallet-new/src/Cardano/Wallet/WalletLayer/Kernel/Active.hs (3)
M wallet-new/src/Cardano/Wallet/WalletLayer/Kernel/Transactions.hs (25)
M wallet-new/test/Cardano/Wallet/WalletLayer/QuickCheck.hs (3)
M wallet-new/test/unit/Test/Spec/GetTransactions.hs (78)
M wallet-new/test/unit/TxMetaStorageSpecs.hs (153)
M wallet-new/test/unit/Wallet/Inductive/Cardano.hs (4)

— Patch Links —

https://github.com/input-output-hk/cardano-sl/pull/3407.patch
https://github.com/input-output-hk/cardano-sl/pull/3407.diff

Добавить комментарий