Commit graph

149 commits

Author SHA1 Message Date
yeastplume
7ac35f134b Revert "[CONTRACTS] Contracts branch update for 1.80 (#718)"
This reverts commit cdd63fb565.
2024-09-19 09:05:44 +00:00
Yeastplume
cdd63fb565
[CONTRACTS] Contracts branch update for 1.80 (#718)
* Simple contracts restructured v3 (#675)

* Add prototype contract implementation

Lacks:
- Payment proofs (add early payment proofs)
- Tests
- Better structure

* Separate contract utilities

* Simplify the main setup/sign code flow

* Remove commented initial_sec_key assignment

* Simplify sign::compute function

* Add logic for "removal" of secret keys from the context

* Further simplify a bit sign and setup

* No need for mutable context when adding outputs

* Refactor the commented code (lol)

* Refactor a bit

* tmp

---------

Co-authored-by: oryhp <gtrphyro@gmail.com>

* contract test fixes (#676)

* [Contracts] Experimental Slate v5 (#677)

* beginning to add and modify slate version 5

* completion of conversions from V5 to V4 Slate

* timestamp and memo fields

* upgrade/downgrade serialization of v5 slates

* add v5 binary slate versions + start of tests

* add bin slate ser/deser to tests

* ensure serialization of timestamp always excludes milliseconds

* start to update v5 tests, update v5 documentation

* add fn to generate populated internal slate for conversion testing

* add basic tests to convert all slate versions

* update

* commit cargo.lock

* [WIP] [Contracts] Early payment proofs (#681)

* add types and beginnings of signature utils

* add proof serialization

* serialisation of proof data + signature operation

* add serialization type for invoice proof + separate bin wrapper version

* add witness data + serializion to invoice payment proof, insert verfication functions in place in order to begin verification testing

* tests and infrastructure in place for validation

* verification of promise sig

* added verification of promise signature, infrastructure up to the point where a signature must be subtracted

* attempting to figure out differences between recipient nonce that's getting stored and calculated recipient nonce

* implementation of witness verification function, retrieve relevant values and re-validate derived recipient partial signature

* move stored portion of invoice proof into core types for storage, need to rename invoice proof

* define/refine the stored portion of payment proofs type 2?

* Folding all proof data into tx log entry storage

* back to importing master

* remove cargo files from diffs

* remove a lot of extra debug output

* return proof witness as part of proof retrieval, define json serialization of invoice proof + witness fields

* finish adding verification steps to foreign API

* remove redundant promise sig field

* move lcation of sign/verify calls

* Replace Azure Pipelines with Github Actions (#688)

* Update CI Badge on README.MD (#690)

* Trigger CI on push and pull request (#693)

* Update versioning to 5.2.0-beta.1 against grin 5.2.0-beta.3 (#691)

* update versioning to 5.2.0-beta.1 against grin 5.2.0-beta.3

* tweak for CI trigger

---------

Co-authored-by: Quentin Le Sceller <q.lesceller@gmail.com>

---------

Co-authored-by: Quentin Le Sceller <q.lesceller@gmail.com>

* fix Cargo.lock

* Contracts - Test fixes + warning cleanups (#694)

* clean up warnings in libwallet crate

* clean up warnings in controller crate

* update all contract tests with awareness of new proof structure

* added explicit payment proof tests for both rsr and srs (#695)

* Basic mwmixnet send (#696)

* integrating onion library

* updates and changes to support newly included mwmixnet types

* add (incorrect) owner api function

* turn off test for now

* switch working grin branch to master

* fix doctests for build

* update cargo lock in attempt to fix croaring build on CI server

* update cargo lock with upstream thiserror crate

* update test dependency for croaring

* [Contracts] Add self spend transaction state (#697)

* Add self spend transaction state

* subtle errors with output states and tx lookups - fixes

* [Contracts] Slatepack v5 Deserialization fix (#698)

* add V5 deserialization test + fixes

* clarify comment

* upwrap fix during v4 deserialization

* further unwrap removal

* update cargo lock, use latest grin packages

* addition of self-spend cancel + tests (#699)

* add tests + legacy self send cancel (#702)

* [Contracts] Cancel self-spend TX Pt. 2 (#703)

* add tests + legacy self send cancel

* add missing file

* Update grin to latest master, change versioning label to include contracts (#712)

* Add owner_api_listen_interface as hidden configuration field (#714)

* updates for rust 1.80

* updates for rust 1.80

---------

Co-authored-by: oryhp <gtrphyro@gmail.com>
Co-authored-by: Quentin Le Sceller <q.lesceller@gmail.com>
2024-08-27 12:30:22 +01:00
Yeastplume
765f11b168
Update working version on master (#713)
* Update working version on master

* update cargo lock
2024-05-21 10:20:09 +01:00
Yeastplume
8069de9a56
Revert "update and versioning for v5.3.1 (#709)" (#710)
This reverts commit 3d6f4b8437.
2024-05-14 09:36:39 +01:00
Yeastplume
3d6f4b8437
update and versioning for v5.3.1 (#709) 2024-05-14 09:35:42 +01:00
Yeastplume
7741812599
Update versioning, dependencies for 5.3.0 release (#708) 2024-04-24 10:20:16 +01:00
Yeastplume
297c828532
Prevent wallet attempting to re-pay a cancelled invoice transaction (#707) 2024-04-24 09:03:58 +01:00
Yeastplume
75363a9a25
Invoice owner API update (#701) 2024-02-20 11:04:42 +00:00
Yeastplume
f28b8c653a
Compilation fixes for master (#700)
* update to use grin master, cargo update

* and remaining crates
2024-02-16 11:19:01 +00:00
Yeastplume
12a25f82f1
Update versioning to 5.2.0-beta.1 against grin 5.2.0-beta.3 (#691)
* update versioning to 5.2.0-beta.1 against grin 5.2.0-beta.3

* tweak for CI trigger

---------

Co-authored-by: Quentin Le Sceller <q.lesceller@gmail.com>
2023-08-03 12:40:04 +01:00
Yeastplume
c0b7c68b13
Update sysinfo crate to 0.29.6 (#685)
* update sysinfo package to fix build error

* update tor process sysinfo calls to new api

* update deprecation warnings

* small logic cleanup

* tweak to retrigger CI

* new_all() not required

* give longer for test thread to stop to hopefully alleviate inconsistent CI failures
2023-07-26 12:59:36 +01:00
Yeastplume
477d903df4
Manual update and verification of #673 (#674) 2023-03-13 13:49:13 +00:00
Yeastplume
2a599027f5 more tweaks based on review 2022-12-05 11:14:46 +00:00
Yeastplume
b1beca4206 remove _inc from field names 2022-12-01 09:44:51 +00:00
Yeastplume
13b1fc8e01 addition of tx statuses to sort fields, fixes to total amount queries, inclusion of bigint, addition of unit tests to exercise filtering 2022-11-28 15:10:29 +00:00
Yeastplume
d29b64248a rename filter test 2022-11-28 09:10:37 +00:00
Yeastplume
806aa985d7 added transaction filtering implementation, addition of internal libwallet test to be filled out 2022-11-23 15:36:42 +00:00
Yeastplume
cd3203be23 update transaction
api calls throughout
2022-11-22 13:25:44 +00:00
Yeastplume
8384a3ebb0
Remove grin lib re-exports from util crate (#661)
* updated util and libwallet with thiserror

* update impl crate to thiserror

* api crate converted to thiserror

* update of controller crate to thiserror

* update final bin + tests to thiserror

* update unused import

* remove failure derive

* reset import of grin to master

* update cargo lock

* update from master

* remove grin libs re-export from util crate :(

* temp local

* point code at bleeding edge grin master branch
2022-08-08 12:08:25 +01:00
Yeastplume
64cab53b1b
Replace failure with thiserror (#654)
* updated util and libwallet with thiserror

* update impl crate to thiserror

* api crate converted to thiserror

* update of controller crate to thiserror

* update final bin + tests to thiserror

* update unused import

* remove failure derive

* reset import of grin to master

* update cargo lock

* update from master
2022-07-28 10:21:45 +01:00
cliik
a3687c69a8
Add option to limit number of TXs shown (#660)
Co-authored-by: cliik <cliik@example.com>
2022-07-26 10:16:47 +01:00
cliik
ef3fadbd24
Implement fee inclusive transactions (#657)
* Add amount_includes_fee option in TX building

* Add --amount_includes_fee CLI option

* Implement send 'max' amount

Co-authored-by: cliik <cliik@example.com>
2022-07-26 10:15:53 +01:00
cliik
7b1eab62b1
Show QR code for listener address (#650)
Co-authored-by: cliik <cliik@example.com>
2022-07-12 10:48:45 +01:00
cliik
95bb4c477e
Show slatepack QR codes (#655)
* Show slatepack QR codes

* Make slatepack QR codes optional

Co-authored-by: cliik <cliik@example.com>
2022-07-12 10:32:26 +01:00
yeastplume
3302d3d9cb update version numbering for next potential release 2022-03-22 14:29:03 +00:00
Yeastplume
fa39fca201
updates to ensure compilation against grin 5.0.2 (#644) 2022-03-21 10:45:53 +00:00
scilio
2924a0ddb2
Add 'build_output' endpoint to owner api (#641)
* add 'build_output' endpoint to owner api

* merge fix
2022-02-18 10:06:04 +00:00
deevope
c424a0ed10
TOR bridge + TOR Proxy + migration config_file_version (#617)
* tor bridge config and args

* migration `config_file_version=2`

* small fixes typo, comment etc..

* support: snowflake, meek_lite, obsf4 and tor proxy

* remove useless serde

* improve migrate function

* few fixes

* add bridge flags to pay and receive + few fixes

* some improvements
2022-02-03 15:33:41 +00:00
Yeastplume
34d23eb17a
PIBD Test Set Generation test (#628)
* add test to build chain with transaction data

* tweaks to test, add again
2021-12-14 15:47:01 +00:00
deevope
d70423af57
View Wallet - fn rewind_hash & scan_rewind_hash (#632)
* fn rewind_hash & scan_rewind_hash

* update comments

* update doctest
2021-12-14 12:23:17 +00:00
GeneFerneau
18361dabd3
Fix deprecated use of RPC trait object without dyn (#615)
Adds dyn keyword to OwnerRpc and ForeignRpc trait objects

Fixes deprecation warning
2021-05-19 14:39:05 -04:00
John Tromp
b7f587f2b3
remove height argument from fee related functions as per fixpastfees RFC (#602)
* remove height argument from fee related functions as per fixpastfees RFC

* Cargo.lock updated from cargo update -p grin_core
2021-05-19 14:27:42 -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
5189de5a0e
Bubble init_send_tx error instead of unwrapping (#600)
Fixes #582
2021-04-07 10:24:16 -04:00
goyle
f7c65c7b84
Change to proper spelling of Tor (#598)
* Change to proper spelling of Tor

* Change to proper spelling of Tor
2021-04-02 08:45:51 -04:00
trevyn
a88a522f84
Clippy easy wins 1 (#596) 2021-03-17 10:51:53 -04:00
Quentin Le Sceller
4e4880be8e
Update copyright license year to 2021 (#587) 2021-03-05 13:30:51 -05:00
jaspervdm
782dd8c29b
Fix error when estimating fees for selection strategies (#545) 2020-12-16 15:18:55 +01:00
Antioch Peverell
92c5918e42
post late locked tx and assert amount on both wallets (#542)
cleanup wallet account setup
2020-12-11 09:45:15 -05: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
jaspervdm
a83f92dfd3
Late locking (experimental) (#530)
* Late locking (experimental)

* Error on fee change

* Improve comments

* Fix typo in comment

* Add late locking flag to CLI command
2020-11-19 12:54:49 +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
Antioch Peverell
e00c61fd05
refactor to pass slices around and not &Vec<> (#498)
cleaned up a couple of unwrap() calls
2020-08-03 10:29:54 +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
dea5850e2b
Add Slatepack file output override (#455) 2020-06-26 10:39:17 +01:00