Commit Graph
137 Commits
Author SHA1 Message Date
antiochp d89331a720 use explicit protocol version (local is not safe) 2019-09-26 08:33:33 +01:00
YeastplumeandGitHub 061a058571 udpate for beta release (#224) 2019-09-24 15:13:20 +01:00
Quentin Le ScellerandYeastplume 83b1df3394 Fix local testing Cargo.toml (#222) 2019-09-24 10:23:39 +01:00
YeastplumeandGitHub 07758f55d3 Update transactions via kernel where necessary (#220)
* 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
2019-09-24 09:56:10 +01:00
YeastplumeandGitHub 26ad378686 API Token Fixes (#218)
* 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
2019-09-12 13:18:15 +01:00
YeastplumeandGitHub 78e30aa779 API Lifecycle Implementation, Part 2 (#217)
* additon of 'get_mnemonic' API function

* rustfmt

* added 'change_password' api function

* rustfmt

* add 'delete_wallet' function'

* rustfmt
2019-09-11 10:27:30 +01:00
YeastplumeandGitHub 41c0058e84 API Lifecycle Implementation, Pt. 1 (#211)
* 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
2019-09-02 16:03:35 +01:00
Antioch PeverellandGitHub 22dfa9b3f5 Merge pull request #210 from antiochp/versioned_coinbase
Introduce VersionedCoinbase to add api stability around build_coinbase
2019-08-20 17:09:14 +01:00
antiochp 1a6b8aff3b introduce VersionedCoinbase to add api stability around build_coinbase 2019-08-20 10:06:06 +01:00
Antioch PeverellandGitHub 3efe36eb7d Merge pull request #129 from antiochp/kernel_features_compat
rework kernel features support
2019-08-20 01:22:45 +01:00
antiochp fbc8173629 fixup controller tests 2019-08-20 00:51:59 +01:00
antiochp 1f76d70209 cleanup imports 2019-08-19 18:02:08 +01:00
antiochp caea305587 revert CbData changes
mining node calls build_coinbase and this needs to be consistent with grin node
2019-08-19 16:58:13 +01:00
antiochp ec3d08a710 translate to/from TransactionV2 correctly in owner api and foreign api 2019-08-19 16:35:54 +01:00
antiochp 3c45dad846 bleeding edge grin libs (master) 2019-08-19 14:29:16 +01:00
antiochp 4b993b0456 rebase against master and compile against kernel_feature_enum_variants branch on grin repo 2019-08-19 14:29:16 +01:00
antiochp 6b95593e7f make sure we only set lock_height if >0 2019-08-19 14:29:16 +01:00
antiochp 6c322acaf8 rework kernel features support to handle fee and lock_height on features variants 2019-08-19 14:29:11 +01:00
YeastplumeandGitHub a58cae651e Add init_api_secure function (#206)
* 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
2019-08-19 13:05:21 +01:00
YeastplumeandGitHub 62d976f9ef Test refactoring and additions to support API Testing (#205)
* move wallet tests into integration module in advance of further test creation, add v3 API

* rustfmt

* fix return value from incorrect mask supplied

* rustfmt

* rework send request call some

* rustfmt

* more refactoring, turn proxy startup + wallet init into macros

* rustfmt

* move sample requests into subdirectories

* add missing wallet files, change gitignore
2019-08-13 09:36:21 +01:00
YeastplumeandGitHub f8c316a351 Store XORed wallet seed in-mem (#200)
* 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
2019-08-06 12:50:41 +01:00
Antioch PeverellandYeastplume 5cdd412205 use VersionedSlate for the owner_rpc api (#202) 2019-08-06 11:34:59 +01:00
YeastplumeandGitHub c40e8a915b Merge milestone/2.1.0 into master (#199)
* 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 f52a8d2c7cdfb8583af5716ad621eb560811d6ee.

* 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
2019-07-29 13:25:03 +01:00
Hendrik RichterandYeastplume 7b6d597d39 add --txid to the wallet txs command (#176)
* add --txid to the `wallet txs` command

* add test for `wallet txs` command with `--txid` parameter
2019-07-08 09:43:56 +01:00
YeastplumeandGitHub 21dd3d5377 Derive --version output dynamically from cargo package version (#174) 2019-07-02 10:24:17 +01:00
Yeastplume f7c17c4ba9 update version number for next potential release 2019-07-01 14:44:22 +01:00
Yeastplume c12f61d154 bump version number for release 2019-07-01 11:05:36 +01:00
YeastplumeandGitHub 1db6029ba2 Clearer user messaging when node in use is 1.1.0 or less (#168)
* Modify error message when checking against old nodes to reflect 1.x.x series

* update output text
2019-06-29 09:09:12 +01:00
Quentin Le ScellerandGitHub 5467515d36 CI Improvements (#166)
* Switch to Windows2019

* Delete Rust install step for Windows and Linux

* Add missing indent

* Missing indents

* Add forgotten LLVM

* Fix indents

* Fix rust flags
2019-06-28 11:15:08 +02:00
YeastplumeandGitHub 64e8c48c35 Merge 2.0.0 branch into master (#164)
* create 2.0.0 branch

* V0/V1 Slate Removal + Grin Header Version Bump (#140)

* Remove V0 and V1 Slates from Wallet

* rustfmt

* V1 API + V2 wallet to wallet impl (#144)

* remove v1 API

* rustfmt

* convert http adapter to use V2 api

* rustfmt

* V2 API conversion Pt2 - Check version (#146)

* call check_version on wallet before http send

* rustfmt

* Support new Bulletproof rewind scheme (#122)

* Restore with LegacyProofBuilder

* Switch to ProofBuilder at HF block

* Switch proof builder for coinbase outputs at hard fork

* Use valid_header_version to switch proof builder

* Fix compilation errors

* Use legacy proof builder for AutomatedTesting chain type

* Add macro to avoid duplicate code

* Read version info from server, react accordingly (#154)

* read and parse version, bump hf

* rustfmt

* add foreign api middleware check

* rustfmt

* add middleware checks

* rustfmt

* add check for incoming pre-hf slates

* api tests

* Add double rewind period (#155)

* Add double rewind period

* Simplify restore

* Fix comment

* bump imported version for beta release

* version bump for next (potential) release

* Provide more specific error when other wallet is outdated (#162)

* add appropriate error message when other wallet is out of date

* rustfmt

* missing cargo.lock
2019-06-27 10:41:05 +01:00
Yeastplume c7a00478aa fix future version number 2019-06-06 00:12:08 +01:00
Yeastplume a1f2e1f2eb update version for master maintenance 2019-06-05 23:51:07 +01:00
Yeastplume 3136812831 fixes and version update for final 1.0.0 build 2019-06-05 22:35:23 +01:00
Yeastplume ea4849a05f fixes and version update for final 1.0.0 build 2019-06-05 22:35:11 +01:00
YeastplumeandGitHub 42befd2340 More helpful error message on recover when wallet_data dir doesn't exist (#134)
* make recover error message when wallet doesn't exist more helpful

* rustfmt
2019-06-04 16:48:04 +01:00
YeastplumeandGitHub 03ab8ad8bd Fix for API secret on node API startup (#131)
* fix for api_secret when reading node height

* rustfmt

* remove macro export

* trigger ci again
2019-06-01 10:37:33 +01:00
Gary YuandGitHub cc940fb978 Merge pull request #130 from garyyu/warning
cargo.lock update, and remove 3 build warning from cargo 1.35.0
2019-06-01 11:40:01 +08:00
Gary Yu 36ab785589 cargo.lock crate version update, and remove 3 build warning from cargo 1.35.0 2019-06-01 10:46:45 +08:00
Yeastplume 9a7243fddd version bump for beta.4 2019-05-31 08:41:20 +01:00
YeastplumeandGitHub b1738e33ed Changes for 1.1.0 -> 2.0.0 Deployment strategy decisions (#126)
* make slate v0 the default for regular sends

* add block_header_version to slate

* update doc tests for latest grin version

* rustfmt

* HACF if HF height detected

* rustfmt
2019-05-31 08:33:23 +01:00
YeastplumeandGitHub af16dea6e1 Version Info API Function tweak, remove 'min_compat_version' from slate (#123)
* change slate version function to return list of supported slate formats

* rustfmt

* remove min_compat_version
2019-05-30 09:34:04 +01:00
Quentin Le ScellerandGitHub 757dfd0d91 Remove Travis.yml (#124) 2019-05-29 15:54:10 -04:00
jaspervdmandYeastplume 84e6c71e8f Test (#119) 2019-05-27 10:44:48 +01:00
Gary YuandYeastplume ad59c601e7 change the api repository to grin-wallet instead of grin (#118) 2019-05-24 15:43:05 +01:00
YeastplumeandGitHub 85b55f5ca7 Add participant ID as part of key to stored private transaction context data (#117)
* add participant_id to saved tranasction context data

* rustfmt?

* change participant id for command line pay command
2019-05-23 16:27:57 +01:00
jaspervdmandYeastplume db818ac8b7 Remove double json encoding on http response (#114) 2019-05-21 10:01:21 +01:00
Gary YuandYeastplume a45f8d3e9f fix: invoice transaction pay need update the slate height (#115) 2019-05-21 10:00:19 +01:00
YeastplumeandGitHub 4b2bc5fc49 fix version string in yml (#113) 2019-05-20 11:29:00 +01:00
jaspervdmandYeastplume 94aee6f742 Fix keybase adapter (#107) 2019-05-16 19:55:20 +01:00
YeastplumeandGitHub e25c93161e Updates for 1.1.0-beta.3 release (#106)
* bump version number and build from tag for beta 3 release

* update for latest grin tag
2019-05-16 10:50:31 +01:00