* refactor address generation code into libwallet, bool to flag whether to include proof, add sender address in init_send_tx
* rustfmt
* require payment proof addr as part of init_tx
* rustfmt
* store payment proof on sender transaction side
* rustfmt
* change sig to ed25519 sig
* rustfmt
* add message creation and signature
* rustfmt
* add payment proof verification function
* rustfmt
* validate proof on sender side, store proof
* rustfmt
* fix json tests
* fixes and updates to tests
* added API functions for converting and retrieving proof addresses
* rustfmt
* add payment proof to init_send_tx example
* rustfmt
* incorrect comment
* add commands for requesting payment proofs
* rustfmt
* wire up payment proofs into command line
* rustfmt
* add address command
* rustfmt
* added tor sending from owner api
* rustfmt
* add TTL to slate, transaction log
* ttl cutoff tests
* add ttl check to recieve functions, add tests, modify doctests
* rustfmt
* fixes from upstream changes and test fixes
* rustfmt
* remove unnecessary block header version check
* refactor address generation code into libwallet, bool to flag whether to include proof, add sender address in init_send_tx
* rustfmt
* require payment proof addr as part of init_tx
* rustfmt
* store payment proof on sender transaction side
* rustfmt
* change sig to ed25519 sig
* rustfmt
* add message creation and signature
* rustfmt
* add payment proof verification function
* rustfmt
* validate proof on sender side, store proof
* rustfmt
* fix json tests
* fixes and updates to tests
* added API functions for converting and retrieving proof addresses
* rustfmt
* add payment proof to init_send_tx example
* rustfmt
* incorrect comment
* add commands for requesting payment proofs
* rustfmt
* wire up payment proofs into command line
* rustfmt
* add address command
* rustfmt
* added tor sending from owner api
* rustfmt
* refactor address generation code into libwallet, bool to flag whether to include proof, add sender address in init_send_tx
* rustfmt
* require payment proof addr as part of init_tx
* rustfmt
* store payment proof on sender transaction side
* rustfmt
* change sig to ed25519 sig
* rustfmt
* add message creation and signature
* rustfmt
* add payment proof verification function
* rustfmt
* validate proof on sender side, store proof
* rustfmt
* fix json tests
* fixes and updates to tests
* added API functions for converting and retrieving proof addresses
* rustfmt
* add payment proof to init_send_tx example
* rustfmt
* incorrect comment
* Update slate version to V3, define PaymentInfoV3 and add needed serialization
* rustfmt
* add ttl and payment proof info to slate
* rustfmt
* add documentation for updated fields
* doc test fixes
* first attempt at adding updater thread
* rustfmt
* rustfmt
* many lifetimes made static to allow api to spawn separate thread
* add first pass at updater thread functionality
* rustfmt
* add mpsc for returning status from update functions
* rustfmt
* add stop state, ensure update is triggered by wallet functions when wallet updater is running
* rustfmt
* add update status function to owner API, V3 owner api functions
* rustfmt
* change update warning
* adding tests for new updater control functions
* documentation updates
* rustfmt
* Rename check-repair -> scan, make lock logic more granular
* rustfmt
* update owner api implementations where to allow granular locking where required
* rustfmt
* store init state on startup to determine whether full utxo scan is required for new wallets
* rustfmt
* fix for init status persist
* add start height argument to scan
* rustfmt
* store last scanned PMMR check index
* rustfmt
* fix issue where account names will be overwritten on check_repair
* rustfmt
* attempts to include check_repair scan as part of normal update
* rustfmt
* fix error on restore due to incorrect parent key id being set
* addition of calls to heigt_range_to_pmmr_indices traits and implementations
* rustfmt
* get_chain_height -> get_chain_tip
* rustfmt
* retrieve height+hash from node, modify check_repair to use block heights
* rustfmt
* fixes from live testing
* rustfmt
* test cleanup and change dependencies back to grin master
* rustfmt
* update tx building to use simpler kernel feature handling
* pass in tx to build::partial_transaction
and update the kernel on the tx based on features from the slate
* bump SHA for grin dependencies
* udpate for beta release
* initial tor explorations
* rustfmt
* basic tor tx send working
* rustfmt
* add tor proxy info to config file
* rustfmt
* add utilities to output tor hidden service configuration files
* output tor config as part of listener startup
* rustfmt
* fully automate config and startup of tor process
* rustfmt
* remove unnecessary process kill commands from listener
* rustfmt
* assume defaults for tor sending config if section doesn't exist in grin-wallet.toml
* rustfmt
* ignore tor dev test
* update default paths output by config, compilation + confirmed working on windows
* rustfmt
* fix on osx/unix
* add timeout to tor connector, remove unwrap in client
* allow specifiying tor address without 'http://[].onion' on the command line
* fix api test
* rustfmt
* update address derivation path as per spec
* rustfmt
* move tor init to separate function
* rustfmt
* re-ignore tor dev test
* listen on tor by default if tor available
* rustfmt
* test fix
* remove explicit send via tor flag, and assume tor if address fits
* rustfmt
* always store and update kernel excess
* fix to parent key id on update as caught by testing
* save kernel excess for transaction recipients and coinbase outputs
* rustfmt
* logic cleanup, cargo.lock
* update to use node beta.3 release
* fix to doctests
* check result of calc offset before using
* rustfmt
* add test for no change output scenario
* rustfmt
* add kernel lookup functionality to transaction retrievals
* rustfmt
* updates and fixes for no-change invoice workflow, test implementations
* rustfmt
* split api secret into owner_api secret and node api secrets
* update for master, drop requirement for authentication for foreign api when run on same port as owner api
* rustfmt
* re-trigger build
* allow owner api to start up without a wallet, begin to add lifecycle functions
* rustfmt
* test and typos fix
* updated with lifecycle functions
* rustfmt
* updates to allow owner api tests to be executed against local wallet proxy
* rustfmt
* fix for windows test
* add ability to pass configuration to , begin to add documentation and doctests
* add ability to pass configuration to , begin to add documentation and doctests
* doctests for lifecycle functions
* rustfmt
* ensure foreign API also has mask updated when being run along owner api, add more tests to lifecycle
* rustfmt
* documentation for lifecycle methods + init_secure_api
* rustfmt
* failing doctest
* adding initial version of init_secure_api
* rustfmt
* fix ECDH algo
* rustfmt
* trying to figure out best way of doing encryption
* refactor secure requests and responses into json-rpc responses, with base64 payload for encrypted messages
* rustfmt
* return proper errors from encrypted api, include tests covering encrypted API error cases
* rustfmt
* add test for normal error (unencrypted)
* rustfmt
* change ports for test, add foreign listener to V2 sanity tests, add ability to select owner api port via command line
* rustfmt
* turn it to 11
* explicit teardown after rpc tests
* update tests with explicit teardowns
* update tests to perform explicit teardown
* fix warnings, ensure all tests teardown
* log output to diagnose CI windows build failures
* disable owner api doctests on windows
* rustfmt
* experimental xor token work
* rustfmt
* test implementation of build_coinbase_t function
* rustfmt
* add separate foreign_rpc_s interface for secure functions
* rustfmt
* rustfmt
* fix http scheme to allow https as well
* add tokenized owner API, modify all functions to use token
* rustfmt
* fix for api doctests, tests passing up to api crate
* rustfmt
* controller crate compilation
* rustfmt
* controller tests passing and modified some to use masked keychains
* rustfmt
* fix wallet tests
* rustfmt
* build from github
* rustfmt
* version bump for next potential release
* Merge master into milestone/2.1.0 (#182)
* Derive --version output dynamically from cargo package version (#174)
* add --txid to the `wallet txs` command (#176)
* add --txid to the `wallet txs` command
* add test for `wallet txs` command with `--txid` parameter
* Refactor - Split WalletCommAdapter into multiple traits (#180)
* Derive --version output dynamically from cargo package version (#174)
* add server auth argument to http client
* Revert "add server auth argument to http client"
This reverts commit f52a8d2c7c.
* modify WalletCommAdapter, moving dest argument into fields on implementors,
visiting havok on automated tests, at least one of which is now out of date and failing
* Split WalletCommAdapter into four traits, one for each of its intended behaviors.
* Remove two vestigals
1. args, a stringly typed argument to put_tx
2. NullAdapter, which is no longer used
* Remove unused "params" argument from listen method.
* Re-add previously existing TODO comment
* Fix non-test build
* completely Fix non-test build
* Full Lifecycle API Support (#184)
* refactoring wallet lib traits
* rustfmt
* rustfmt
* add new files
* explicit lifetime specifiers on all wallet traits
* rustfmt
* modify apis to use new walletinst
* rustfmt
* converting controller crate
* rustfmt
* controller crate compiling
* rustfmt
* compilation
* rustfmt
* Remove config from wallet, implement open_wallet, close_wallet in lifecycle provider, remove password + open_with_credentials from WalletBackend + impl
* rustfmt
* full compilation, changing recovery + init to new model
* rustfmt
* wallet initialisation working, init command output and flow identical to v2.0.0 wallet
* rustfmt
* fix listener and owner api startup
* rustfmt
* rustfmt
* move encryption test
* rustfmt
* fix api doctests
* rustfmt
* fix for most tests in controller crate
* rustfmt
* fix for check tests in controller crate
* fix main wallet tests
* rustfmt
* add explicit functions to handle mnemonic recovery, fix CLI recovery workflow
* rustfmt
* update keybase adapter to use new wallet format
* rustfmt
* test fix
* remove debug output