Commit graph

353 commits

Author SHA1 Message Date
hashmap
dc59f67c7b
Reduce number of unwraps in chain crate (#2679) 2019-03-17 13:32:48 +01:00
Gary Yu
608973c498 Fix the build warning of deprecated trim_right_matches (#2662) 2019-03-10 20:13:42 -07:00
Antioch Peverell
27c43c42a2
Simplify (and fix) output_pos cleanup during chain compaction (#2609)
* expose leaf pos iterator
use it for various things in txhashset when iterating over outputs

* fix

* cleanup

* rebuild output_pos index (and clear it out first) when compacting the chain

* fixup tests

* refactor to match on (output, proof) tuple

* add comments to compact() to explain what is going on.

* get rid of some boxing around the leaf_set iterator

* cleanup
2019-02-27 21:02:54 +00:00
Ignotus Peverell
8e2b0c7bc8
Bump version to 1.0.2 (#2623) 2019-02-24 21:57:56 -08:00
Ivan Sorokin
aa4f44b79a fix: wallet coin selection respects max_block_weight (#2546)
* fix #2510: wallet coin selection respects max_block_weight

Deprecate "soft" max_outputs limit and introduce "hard" max_outputs
limit based on max_block_weight.

* Fix tests
2019-02-12 15:06:25 -08:00
Ivan Sorokin
1d0c04cf0b Add ability to compare selection strategies (#2516)
Before tx creation user can estimate fee and locked amount
with different selection strategies by providing `-e` flag for
`wallet send` command.
2019-02-12 13:45:43 +00:00
Gary Yu
5987bcde19 add repost method into wallet owner api (#2553)
* add repost method into wallet owner api

* rustfmt
2019-02-12 13:39:43 +00:00
Mark Renten
3b74a9ba3f Add content disposition for OK responses (#2545) 2019-02-11 10:54:21 -08:00
Yeastplume
200f87b8bc
Windows TUI Fix (#2555)
* switch pancurses backend to win32

* revert changes to restore test
2019-02-10 12:55:35 +00:00
Yeastplume
15c7a270eb
Windows Compatibility Fixes #1 (#2535)
* initial changes for windows build and unit/integration tests

* rustfmt

* wallet+store tests

* rustfmt

* fix linux daemonize

* better encapsulate file rename

* rustfmt

* remove daemonize commands

* rustfmt

* remove server start/stop commands

* add ability to drop pmmr backend files explicitly for txhashset unzip

* rustfmt

* fix pmmr tests

* rustfmt
2019-02-09 21:14:27 +00:00
Ivan Sorokin
49ca8eba49 fix: false positive wallet tests (#2539) 2019-02-08 11:31:36 +00:00
Yeastplume
e69ce5ad82
Move slate code from core/libtx to wallet/libwallet (#2533)
* move slate from core to wallet crate

* rustfmt
2019-02-05 23:02:00 +00:00
Antioch Peverell
19ce9cc28e
bump for v1.0.1 (#2511) 2019-02-01 14:43:18 +00:00
Yeastplume
130675e017
Refactor tx lib to be more Sender-Recipient agnostic (#2502)
* move slate initialisation outside of selection function

* refactor internal tx lib to support recipient (or anyone else) first models

* rustfmt

* rework init api function

* rustfmt

* refactor wallet lock closures to a defined fnmut type

* rustfmt

* comments for clarification
2019-02-01 11:35:37 +00:00
hashmap
062d41766e
Refresh coinbase key if the existing one was removed (#2493)
* Refresh coinbase key if the existing was removed

It happens if `wallet check` runs in parallel.
Alternative solution is not to remove it during the check.
Fixes #2412
2019-01-31 13:00:44 +01:00
Yeastplume
0c851c5140
Save slate participant messages in database (#2441)
* Save and display optional slate messages

* rustfmt

* fixes and test updates

* rustfmt

* output json

* rustfmt

* add better serialisation of slate message, rename to secp_ser, add tests for serialization functions

* rustfmt

* max length for message enforced by API

* rustfmt
2019-01-31 11:55:34 +00:00
Antioch Peverell
507da6a9fd default to sane value for missing owner_api_listen_port (#2484)
* default to sane value for missing owner_api_listen_port

* add comment for owner_api_listen_port
and cleanup previous comment

* get rid of TODO
2019-01-29 20:21:09 -08:00
Raghav Sood
f2b6100220 wallet/owner_api: allow owner API port to be configurable (#2475) 2019-01-28 10:45:59 +00:00
Antioch Peverell
6d041a949b
wallet config should default to mainnet (#2478) 2019-01-28 09:52:48 +00:00
Yeastplume
a97ab376cb
Improve wallet + node API Comms error logging (#2472)
* make wallet+node communication errors more verbose

* rustfmt
2019-01-25 12:12:50 +00:00
Simon B
dd1a24dcbc Compiler warnings 20190123 (#2462)
* cleanup compiler warnings: unused imports

* rustfmt

* more compiler warnings
2019-01-25 10:09:32 +00:00
Yoni Svechinsky
a523f82820 Add hex serialization functions (#2436)
* Change slate seralization to hex

* rustfmt

* Comment out serde directives
Move serialization functions into a seperate module

* Remove commented code
2019-01-24 13:18:13 +00:00
Gary Yu
c34c991472 fix: wallet outputs display on white background color scheme (#2444) 2019-01-22 13:31:34 +00:00
Gary Yu
6b5212e7ec wallet: avoid display the long file name on txs (#2445) 2019-01-22 13:30:50 +00:00
Yeastplume
be5e83ff3a
more useful store_error debug (#2448) 2019-01-22 13:30:12 +00:00
James
2072e48c15 Change owner API port for MainNet (#2405)
* Change owner API port for MainNet

* Added owner_api port selector based on is_floonet
2019-01-21 20:18:01 +00:00
Ignotus Peverell
e7485ab5f1
Version bump to 1.0.0 2019-01-15 16:24:29 +00:00
Gavin McDermott
34bd35e8fc fix: foreign_api handles pre-flight OPTIONS call on POST requests (#2365) 2019-01-14 11:53:09 -08:00
Yeastplume
5d257283bd
Only create 1 received tx log entry on restore (#2378)
* restore only creates 1 received tx

* restore child index sanity output
2019-01-14 16:49:34 +00:00
Yeastplume
9a497f1439
Wallet Performance enhancements - cache commit + transaction fetching logic (#2375)
* add optional cached commit to output data, to speed up queries

* rustfmt

* clean up transaction retrieval logic

* rustfmt

* small logic error

* rename cache method

* rustfmt
2019-01-14 15:43:10 +00:00
Yeastplume
5fcf93deae
Cancel tx should set output status to Unspent (#2368)
* cancelling transaction should reset output status to Unspent

* rustfmt
2019-01-13 22:24:01 +00:00
Yeastplume
e93b380a06
Recover outputs from multiple wallets using same seed (#2348)
* adding optional mmr index to key ids

* rustfmt

* update index

* add mmr index to output display

* change restore to match on commit instead of ID, add extensive restore/check tests for multiple wallets using same seed

* rustfmt

* ensure check restores unknown accounts as well

* rustfmt

* remove storage of commit from wallet
2019-01-12 18:39:29 +00:00
Ignotus Peverell
60d3ee3c44
Bump version to 0.5.2 for release 2019-01-11 01:26:30 +00:00
hashmap
5cf4d7acfe Use ZeroingString for password and passpharse in wallet (#2285) 2019-01-10 15:58:37 -08:00
Yeastplume
cd9a539288
Add 'recover' option to grin wallet init (#2330)
* Only update outputs with unconfirmed transactions outstanding

* add further check for Unspent output that have been spent to check_repair

* rename  to

* make updating all outputs optional API parameter. do full update before a wallet check, remove unspent->spent check from check process

* rustfmt

* typo

* add recover from phrase option to init

* rustfmt

* don't panic if recover is cancelled, grin-wallet.toml is created but wallet_data dir doesn't yet exits

* rustfmt
2019-01-10 12:06:12 +00:00
Yeastplume
4191b15410
Wallet - only update outputs with unconfirmed transactions outstanding (#2322)
* Only update outputs with unconfirmed transactions outstanding

* add further check for Unspent output that have been spent to check_repair

* rename  to

* make updating all outputs optional API parameter. do full update before a wallet check, remove unspent->spent check from check process

* rustfmt

* typo
2019-01-10 11:17:35 +00:00
Yeastplume
5915580ab3
Automate wallet seed recovery process (#2319) 2019-01-09 16:13:05 +00:00
Antioch Peverell
27801f6a93
Implement kernel and output features as enums (#2312)
* use enums for kernel and output features

* rustfmt

* add test coverage around deserializing kernel features
2019-01-08 16:07:38 +00:00
Ignotus Peverell
2c5ba853f7
Version bump to 0.5.1 2019-01-07 19:41:07 +00:00
Ducem Barr
a3431fb147 feat: Configuration option to include foreign API endpoints in the owner API (#2305)
* Allow foreign API over owner API port

* Tests for owner_api_include_foreign config option
2019-01-07 10:00:52 +00:00
Yeastplume
b927c10b01
Update libsecp version and a few trivial enhancements (#2304)
* update libsecp version and a few trivial enhancements

* update grin_secp version number
2019-01-06 21:18:02 +00:00
Yeastplume
dca9462669
Http adapter Fix (#2295)
* only send http and keybase adapter slates sync

* rustfmt
2019-01-05 21:16:01 +00:00
Gary Yu
939f42ea56
a bit refactoring on wallet controller for issue_send_tx (#2280)
* a bit refactoring on wallet controller for issue_send_tx
2019-01-03 19:01:31 +08:00
Gavin McDermott
3092221997 fix: specify allowed headers on http responses (#2184) 2019-01-03 10:52:00 +01:00
Blade Doyle
c45486f2b9 fix: issue_send_tx problem with keybase method in grin_owner_api
* don't drop the slate after send_tx_sync, and also call finalize here following the same pattern as other sync method
2019-01-03 09:15:34 +08:00
Ignotus Peverell
216924c677
Fix for genesis outputs confirms count (#2271) 2019-01-02 12:11:02 -08:00
Yeastplume
d9ff8e278e Wallet recovery phrase security fixes (#2276)
* prompt for recovery phrase using linefeed crate functionality
* break out recovery parse function, remove phrase from logging
2019-01-02 12:10:07 -08:00
Yeastplume
906adb9e6d
Don't clean unconfirmed outputs > 500 blocks old (#2275)
* only clean unconfirmed coinbase

* only past 50 blocks
2019-01-02 14:27:17 +00:00
Elichai Turkel
f2a29ce37a Optimizing the code and making it more idiomatic (#2269) 2019-01-01 15:29:16 -08:00
Yeastplume
9c98b798ee
Delete Unconfirmed outputs as part of wallet check_repair (#2261)
* Delete unconfirmed outputs as part of check_repair process

* rustfmt
2018-12-30 22:19:11 +00:00