Commit graph

162 commits

Author SHA1 Message Date
Yeastplume
b1719bdf5b
[5.3.x BRANCH] 5.3.x branch pre-release update (#723)
* update and versioning for v5.3.1 (#709)

* Revert "update and versioning for v5.3.1 (#709)" (#710)

This reverts commit 3d6f4b8437.

* Update working version on master (#713)

* Update working version on master

* update cargo lock

* [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>

* Revert "[CONTRACTS] Contracts branch update for 1.80 (#718)"

This reverts commit cdd63fb565.

* [MASTER] Updates for Rust 1.80+ (#722)

* warning fixes

* warning cleanup

* Merge 1.80 fixes from master 2

* Merge 1.80 fixes from master 3 - Cargo.lock

* version update for 5.3.3 release

---------

Co-authored-by: oryhp <gtrphyro@gmail.com>
Co-authored-by: Quentin Le Sceller <q.lesceller@gmail.com>
2024-09-19 11:31:43 +01:00
Yeastplume
49d1b26c87
update and versioning for v5.3.1 (#711) 2024-05-14 10:07:06 +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
319b9ca7e0 move result count limiting to after sorting 2022-12-06 09:51:50 +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
1188f3287d add doctest exercising advanced query JSON API 2022-11-29 09:30:45 +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
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
746c1831c5 add query pagination options struct 2022-11-22 12:04:17 +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
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
yeastplume
3302d3d9cb update version numbering for next potential release 2022-03-22 14:29:03 +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
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
deevope
041b182fcc
latest master and ser&des update fn arguments (#631) 2021-12-13 15:53:46 +00:00
Yeastplume
1f35feed00
Update Cargo.lock from latest master, update age library to 0.7 (#625)
* Update cargo lock and introduce changes for update to age library

* update bech32 prefix
2021-11-13 12:19:32 +00:00
GeneFerneau
ba9a4982df
Fix documentation warning for Slate::msg_to_sign (#616) 2021-05-19 15:02:17 -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
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
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
Jakob Abfalter
b3d4d038a5
Changed pub_nonce_sum and msg_to_sign to be public functions (#557)
* [Dev] changed pub_nonce_sume to be public

* [Dev] made msg_to_sign public to be able to create signatures outside of
slate.rs

Co-authored-by: Jakob <jakob.abfalter@brex.io>
2021-03-05 13:12:08 -05:00
John Tromp
a4c82b99d2
fix yet another instance of fee fields at height 0 (#538) 2021-03-01 14:29:55 +00: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
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
073c63aa16
handle transaction inputs correctly (#512)
* commit

* bump grin crates to latest version on master
2020-09-07 18:04:07 +01:00
antiochp
2b1ba14db5 grin output_identifier refactoring 2020-09-01 14:01:20 +01:00
Nym Seddon
f29fc9352f
Check Slatepack file size before loading contents (#495)
Check Slatepack file size is within valid range before loading contents
into memory

Co-authored-by: Nym Seddon <unseddd@shh.xyz>
2020-08-12 10:09:46 +01:00
Yeastplume
b58322fdda
update ed25519_dalek release (#506) 2020-08-10 14:42:53 +01:00
Antioch Peverell
b447dd1f69
build_coinbase api fix and cleanup (#505) 2020-08-10 11:38:03 +01:00
Antioch Peverell
3ae8856afe
tx inputs underwent refactoring (#502) 2020-08-07 15:57:27 +01:00
Yeastplume
9146c17967
remove invoice state from context (#500) 2020-08-06 15:19:37 +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
0d512114a3
Fix API doc typo (#449)
* Fix API doc typo
2020-07-20 14:55:20 -04: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
354b8e46a6
Change base64 serialization back to hex in JSON slate output (#457)
* Change base64 serialization back to hex in JSON slate output

* update V4 slate change description
2020-06-26 12:37:54 +01:00
Yeastplume
f8ea76732b
Modify get_stored_tx functions + tests (#454) 2020-06-25 10:06:04 +01:00
Yeastplume
99c2505bf5
Add option to skip Tor send attempts in TorConfig (#453) 2020-06-24 10:50:40 +01:00