Commit graph

103 commits

Author SHA1 Message Date
Quentin Le Sceller
83fd8ffc86
Replace custom hyper client with reqwest (#593)
* [DNM] Replace custom hyper client with reqwest

* Fix runtime error
2021-05-04 11:13:38 -04:00
trevyn
bdc5bd748a
Use remove_dir_all crate for more robust Windows CI (#604)
* Use `remove_dir_all` 0.7 in tests only
2021-04-08 09:45:52 -04:00
trevyn
e9e67884d6
Sync to latest grin master and fix missing verifier_cache (#599)
* Sync to latest grin master and fix missing verifier_cache

* Copy CI fixes from grin master
2021-04-05 10:14:10 +01:00
jaspervdm
f4f4184283
Use global Tokio runtime (#543) 2020-12-15 21:09:19 +01:00
jaspervdm
78960015fc
Bump master version to 5.1.0-alpha.1 (#536)
* Bump version to 5.0.0-beta.1

* Bump version to 5.1.0-alpha.1

* Switch to grin master
2020-12-01 14:48:07 +01:00
John Tromp
8334304c16
fixfees on grin-wallet (#526)
* change fee to fee_fields in various structs and fix tests for new fee calculation

* set up accept_fee_base param in grin-wallet.toml

* fix bug and adopt new tx_fee interface

* Fix doctests

* Remove left over debug statement

* revert field name feef to fee to remain slate compatible

* use into() for some literal fee_fields

* add height arguments to FeeFields methods where necessary

* Fix tests

* Rename fee_fields -> fee on Context

* Rename fee_fields -> fee on TxLogEntry

* Update to grin master

* replace fee(0) by fee(2*YEAR_HEIGHT) to get fee masking

* Fix compilation error and revert Cargo lock

* fix wrong height passed into next_difficulty

Co-authored-by: Jasper van der Maarel <j@sper.dev>
2020-11-26 20:46:03 +01:00
Quentin Le Sceller
c0e68ec3ea
Rename Floonet to Testnet (#521)
* Replace floonet by testnet

* Update Cargo.lock
2020-10-08 10:00:01 -04:00
Antioch Peverell
7f5c010fed
fix our lmdb iter usage to work with changes in grin (#522) 2020-10-07 20:08:30 -04:00
Antioch Peverell
073c63aa16
handle transaction inputs correctly (#512)
* commit

* bump grin crates to latest version on master
2020-09-07 18:04:07 +01:00
antiochp
54627383ec bump grin sha for master
add test for tx json serialization
2020-09-03 11:24:45 +01:00
antiochp
e8dc39b921 get_unspent api changed to take a commitment directly 2020-09-01 10:36:25 +01:00
Yeastplume
b58322fdda
update ed25519_dalek release (#506) 2020-08-10 14:42:53 +01:00
Antioch Peverell
3ae8856afe
tx inputs underwent refactoring (#502) 2020-08-07 15:57:27 +01:00
Yeastplume
6c9cef1370
Post Hardfork 3 Cleanup (#490)
* Change versioning on master to 4.1.x development

* Remove SlateV3, V3 References from command-line code

* continue to remove pre HF3 functionality, remove participant_id from slate, remove is_compact, derive slate state based on slate state field

* slate no longer needs explicit compact step

* version/build coinbase doctest cleanup

* don't attempt to store transaction during tx lock if it doesn't exist

* repair incorrectly removed logic

* last test fixes (hopefully)
2020-07-31 10:33:45 +01:00
Quentin Le Sceller
d13aa39cc0
version bump for next potential release (#461) 2020-07-03 16:10:38 +01:00
Yeastplume
47e99f5603
Versioning for 4.0.0 (#459) 2020-07-02 12:23:54 +01:00
Yeastplume
0fb677069d
Version bump to v4.0.0-rc.1 (#458) 2020-06-26 14:05:00 +01:00
Yeastplume
bf3f0a49e0
Version bump for 4.0.0-beta.3 (#448) 2020-06-16 15:43:13 +01:00
Quentin Le Sceller
0079c04b2d
Version Bump for v4.0.0-beta.2 (#437) 2020-06-12 11:14:23 -04:00
Quentin Le Sceller
0e817fd1c0
Cargo Update (#426)
* Cargo update

* Fix easyjsonrpc import

* Cargo update

* Fix compiler warning
2020-06-10 12:31:04 -04:00
Yeastplume
2a2367ff04
Version Bump for v4.0.0-beta.1 (#427) 2020-06-04 17:21:49 +01:00
Yeastplume
3edd410e19
change hyper-socks2-mw to versioned crate (#425) 2020-06-03 14:31:19 +01:00
Yeastplume
60ab3728ab
Slatepack Workflow (#423)
* debugging tor sends

* use fixed yeast version of hyper-socks2

* send command working according to slatepack

* changes to handling proof address

* modifications of recieve command to work with slatepack and to attempt to return to sender via TOR

* finalize command tested

* attempting to add invoice processing

* fixes to tests, propagation of test mode where needed

* modify return values of api functions that can send as sync

* cleanup, testing and post_tx function

* revert changes to API, many test fixes

* deprecate http on the command-line warning
2020-06-03 08:39:23 +01:00
Antioch Peverell
4fe6bf1c23
NRD kernel variant (compile against grin master) (#408)
* wip

* hardcode NRD kernel during tx building

* commit

* compiles against grin with NRD kernel variant
2020-05-29 15:52:46 +01:00
Yeastplume
03cb1097e0
Slatepack Pt. 3 - The Packening (SlatepackAddress implementation) (#413)
* addition of SlatepackAddress type

* complete conversion of ed25519 keys to x25519 and isolate conversion within libwallet

* refactor packing/unpacking of slates logic into libwallet and out of slate adapters

* println
2020-05-26 09:51:05 +01:00
antiochp
66f67b5170 update grin deps 2020-05-22 14:36:06 +01:00
Yeastplume
2769436117
Slatepack - Pt 2 - Encryption (#411)
* recreate PR from #400

* first tests with slate encryption

* simplify slatepack model to contain encryption header in payload, and add de/ser tests

* update tests and confirm slatepack encryption working

* remove recipient list, add version check warning
2020-05-22 11:48:11 +01:00
Yeastplume
9450d2a3b8
Compact slate merge (#404)
* Add support for sending compact slates (#366)

* WIP add support for sending compact slates

* add repopulate_tx function to internal API

* first pass at compacted slate working

* move slate compaction to separate function

* test fixes

* support compact slate inits in invoice workflow

* add compress flags to send and invoice

* attempting to remove is_compact and assume all V4 slates begin as compact

* attempting to calculate offsets when full tx data isn't available

* update calc_commit to use participant blind data

* update doctests for compact slates

* start to remove unneeded fields from serialization

* make num_participants optional

* remove other_version from slate

* use grin master branch

* remove message field

* lock height assumed to be 0 if it doesn't exist

* don't serialise receiver signature when null

* don't serialize payment_info if not needed

* remove participant id from participant info

* add note on id field

* fix finalize and receive doctests

* finalize_tx tests, init_send_tx tests

* doctests for process_invoice_tx, retrieve_tx, tx_lock_outputs

* finished test changes

* update from grin master

* rebuild PR from diff (#380)

* recreate PR from diff (#381)

* serialize tx struct into top level coms object (#382)

* remove height (#383)

* Add State Slate (#384)

* add state field to slate and SlateV4

* set slate state at each transaction stage, add check to tests

* serialize slate status properly

* V4 Slate field tweaks (#386)

* various tweaks to V4 slate

* field renaming

* serialize slate v4 ID as base64 (#387)

* remove amount and fee where not needed (#388)

* Final Changes for compact Slate (#389)

* add tests for all types of file output, remove message args

* default range proof serialization

* shorten output features serialization

* rename payment proof fields in slate v4

* v4 payment proof serialization

* Binary Slates (#385)

* start test implementation

* add experimental binary serialization to slate

* serialize id

* serialize fields that can be skipped as a separate struct

* factor out sigs serialization

* clean up sigs and coms serialization

* completed v4 bin serialization

* add manual de/ser traits for V4 bin slate

* add simple byte array serializer

* complete wiring in of bin slate serialization

* clarify comment

* clarify comment

* update version

* test output dir name fix

* update slate v4 change description

* add binary output to command line

* Remove unneeded signature data during S2 and I2 stages (#390)

* remove unneeded return signature data during S2

* remove unneeded sig data from I2

* Doctest Fixes for compact slate branch (#392)

* begin to fix doctests

* more doctest fixes

* fix receive_tx

* update get_stored_tx to accept an UUID instead of a tx object, and operate on a raw Transaction object (#394)

* Fixes to async transaction posting (#395)

* unstash post_tx changes

* add offset during S3 and I3

* Revert slate id serialization to hex-string uuid (#396)

* update from master (#397)

* v3.x.x - v4.0.0 wallet compatibility fixes (#398)

* changes to support http sending to v3 wallets

* sending via http/tor TO 3.0.0 wallet works

* receiving FROM 3.0.0 wallets works over http/tor

* output converted V3 slate when needed

* paying invoices from 3.0.0 wallets working

* handle all participant info in slate states

* sending and receiving standard file transactions between v3 and 4 wallets confirmed working

* all file-based workflows working

* fixes resulting from tests

* remove reminder warnings

* remove lock_height, add kernel_features + arguments (#399)

* grin-wallet master now building against grin master (#402) (#403)

Co-authored-by: Antioch Peverell <apeverell@protonmail.com>

* Enhanced offset creation (#407)

* initial tests reworking offset creation

* invoice flow fixing + tests

* further test fixes

* change offset name in v4 slate, base64 serialize

* logic optimisation

* changes based on review feedback

Co-authored-by: Antioch Peverell <apeverell@protonmail.com>
2020-05-19 11:19:03 +01:00
Antioch Peverell
19da1e4aec
grin-wallet master now building against grin master (#402) 2020-05-11 10:27:47 +01:00
Yeastplume
c42d5ddcff
Make Transaction Field in V4 Slate Optional (#356)
* make transaction field in V4 Slate optional

* add mutable/non mutable version of tx getter

* removal of mut references where not needed

* remove more muts

* update from master

* update from master

* test fixes
2020-03-10 18:19:27 +00:00
jaspervdm
aebc352fbe
Update hyper-timeout version (#364) 2020-03-10 16:49:37 +01:00
jaspervdm
63eb25a92b
Stop proxy in controller tests to allow dir cleanup on Windows (#363)
* Stop wallet proxy in controller tests to allow directory cleanup in Windows

* Update test client

* Update to latest grin master

* is_unspent -> get_unspent
2020-03-10 12:00:33 +01:00
Yeastplume
1810854b24
Remove V2 Slate, Add V4 (#354)
* add V4 slate

* add V4 slate

* deprecation warnings as reminders

* fix doctests, add warnings and change upstream grin back to master
2020-03-06 09:33:47 +00:00
Yeastplume
decdd173a0
version bump for next potential release 2020-03-02 15:11:18 +00:00
Yeastplume
695e425f22
Version bump for 3.1.0 release (#350) 2020-03-02 13:10:28 +00:00
jaspervdm
2f67695b37
Remove unused dependencies (#347) 2020-02-25 18:33:05 +01:00
Yeastplume
df8b706fbb
Version increment for 3.1.0-beta.2 (#346) 2020-02-25 10:46:28 +00:00
jaspervdm
b56afda5f9
Fix compilation issues (#344) 2020-02-24 22:39:32 +01:00
Jasper van der Maarel
8ca3f9994b
Update hyper/tokio/futures dependencies 2020-02-24 16:20:14 +01:00
Yeastplume
9213559548
Update ring crates, update ring AEAD functionality to new ring API (#341) 2020-02-24 12:03:09 +00:00
Yeastplume
b2c973fd0b
Cargo update (#337) 2020-02-18 10:23:33 +00:00
Yeastplume
4bb0398e21
Convert node client to use V2 Node API (#329)
* add beginnings of jsonrpc node client, get_chain_tip implementation

* version info and outputs from node

* return async split up of get_output requests

* add and test get kernel functionality

* height range to pmmr indices

* test fixes

* outputs by pmmr index
2020-02-14 09:16:43 +00:00
Quentin Le Sceller
40a0dbdd7f
Forgotten Cargo.lock (#327) 2020-02-07 10:07:31 +00:00
Yeastplume
2d264db91a
Wallet Interactive-mode, Part 1 (#295)
* cli addition to yml

* first experiments with CLI mode

* rustfmt

* modify owner_single_use to take optional instantiated API

* refactor command functions to take owner api instance

* modify commands to use single owner api instance

* add ability to pass customised message handler to API

* prevent update wallet attempt if wallet hasn't been opened

* fix output when internal updater is running

* add termion, use cli for status updates, remove logging output from CLI

* some attempts to clean up the command prompt and accomodate scanning intervals

* rework listener slightly to allow for cli mode, add close command

* remove termion dependency
2020-02-06 09:08:24 +00:00
Yeastplume
c76ee7c803
Cargo update (#323) 2020-02-04 10:04:57 +00:00
Yeastplume
a2560179ae
Onion V3 address consistency (#309)
* initial addition of ov3

* move libwallet address functions into OnionV3Address type

* incorporate OnionV3 type where possible

* factor out manual dalek pubkey manipulations

* corrections due to test failures

* change json-rpc example to use ov3 for payment proof recipient address
2020-01-24 13:02:09 +00:00
Yeastplume
483949e4fb
versioning for branch 2019-12-20 11:23:11 +00:00
Yeastplume
d30fa460d9
Updated to link v3.0.0-beta.3 node release (#281) 2019-12-19 20:53:36 +00:00
Yeastplume
52eecb5222
beta.2 (#278) 2019-12-12 22:15:50 +00:00
Yeastplume
aa88bc2c16
3.0.0-beta.1 Versioning (#274)
* versioning, cargo lock update and test fix

* node version for build
2019-12-06 13:24:09 +00:00