Daniela Brozzoni
958e72877c
build!: Update bdk to rust-bitcoin 0.30.0
2023-08-16 15:02:51 +02:00
Max Fang
45d41416ed
Derive PartialEq
, Eq
on SyncTime
...
This enables e.g. `assert_eq!` comparisons of `SyncTime` in tests.
2023-01-29 12:26:54 -08:00
Vladimir Fomene
e65edbf53c
Change parameter name of database in test funcs
...
Change parameter name in database test functions
from `tree` to `db`.
2022-09-13 16:36:31 +03:00
Vladimir Fomene
88307045b0
Add more test to the database module
...
This PR aims to add more test to database
code so that we can catch bugs as soon
as they occur. Contributing to fixing
issue #699 .
2022-09-13 16:35:53 +03:00
KaFai Choi
e68d3b9e63
remove Database::flush
2022-06-29 12:39:49 +07:00
Philipp Hoenisch
d9b9b3dc46
Fix InvalidColumnIndex error
...
This query returns 7 columns, so last columns is index 6
2022-06-03 15:28:43 +10:00
Steve Myers
cea79872d7
Update database tests to verify set_utxo upserts
2022-05-19 13:20:09 -07:00
Alekos Filini
cca69481eb
Bump MSRV to 1.56
2022-05-04 17:29:07 +02:00
Steve Myers
a111d25476
Deprecate Database::flush() function
...
The Database::flush() function is only needed for the sled database on mobile, instead for mobile use the sqlite database.
2022-04-12 14:16:09 -07:00
Daniela Brozzoni
f2f0efc0b3
Never delete spent utxos from the database
...
A `is_spent` field is added to LocalUtxo; when a txo is spent we set
this field to true instead of deleting the entire utxo from the
database.
This allows us to create txs double-spending txs already in blockchain.
Listunspent won't return spent utxos, effectively excluding them from the
coin selection and balance calculation
2022-03-10 11:58:23 +01:00
rajarshimaitra
08f312a82f
Remove verify
flag from TransactionDetails
2022-02-09 12:29:47 +05:30
thunderbiscuit
7f8103dd76
Fix typos in comments
2021-11-23 14:09:54 -05:00
Alekos Filini
5830226216
[database] Wrap BlockTime
in another struct to allow adding more
...
fields in the future
2021-11-10 12:30:42 +01:00
Alekos Filini
2c77329333
Rename ConfirmationTime
to BlockTime
2021-11-10 12:30:38 +01:00
Alekos Filini
2892edf94b
[db] Add the last_sync_time
database entry
...
This will be used to store the height and timestamp after every sync.
2021-11-10 12:29:47 +01:00
John Cantrell
c06d9f1d33
implement sqlite database
2021-09-23 20:54:08 -04:00
Steve Myers
19d74955e2
Update Database BatchOperations flush() documentation
2021-08-19 13:56:38 +02:00
Riccardo Casatta
e52550cfec
Add flush method to Database trait
2021-08-03 12:33:31 +02:00
Alekos Filini
a186d82f9a
[wallet] Verify unconfirmed transactions after syncing
...
Verify the unconfirmed transactions we download against the consensus
rules. This is currently exposed as an extra `verify` feature, since it
depends on a pre-release version of `bitcoinconsensus`.
Closes #352
2021-07-01 16:36:42 +02:00
Riccardo Casatta
0bbfa5f989
make fee in TransactionDetails Option, add confirmation_time field as Option
...
confirmation_time contains both a block height and block timestamp and is
Some only for confirmed transaction
2021-06-14 15:29:24 +02:00
Tobin Harding
9aea90bd81
Use default: D
mirroring Rust documentation
...
Currently we use `F: f` for the argument that is the default function
passed to `map_or_else` and pass a closure for the second argument. This
bent my brain while reading the documentation because the docs use
`default: D` for the first and `f: F` for the second. Although this is
totally trivial it makes deciphering the combinator chain easier if we
name the arguments the same way the Rust docs do.
Use `default: D` for the identifier of the default function passed into `map_or_else`.
2021-05-07 09:08:49 +10:00
Steve Myers
12ae1c3479
Update license to Apache 2.0 or MIT, copyright to Bitcoin Dev Kit Developers
2021-03-03 13:23:25 -08:00
Alekos Filini
1cbd47b988
Merge commit 'refs/pull/285/head' of github.com:bitcoindevkit/bdk
2021-02-26 10:14:01 +01:00
LLFourn
a7183f34ef
s/UTXO/LocalUtxo/g
...
Since this struct has a "keychain" it is not a general "UTXO" but a
local wallet UTXO.
2021-02-26 13:33:52 +11:00
Tobin Harding
0e99d02fbe
Remove redundant calls to clone
...
No need to clone copy types, found by clippy.
2021-02-24 13:30:46 +11:00
LLFourn
9b31ae9153
Fix doc comment fallout from s/script type/keychain
2020-12-15 08:39:19 +11:00
Alekos Filini
1713d621d4
Rename ScriptType
to KeychainKind
...
This avoids confusion with the "type of script".
2020-12-14 17:14:24 +01:00
LLFourn
8dcb75dfa4
Replace UTXO::is_internal with script_type
...
This means less conversion and logic mapping from bool to ScriptType and
back again.
2020-12-04 10:46:25 +11:00
Steve Myers
aea9abff8a
[ci] Fix clippy warnings, enable clippy checks
2020-10-10 10:31:07 -07:00
Alekos Filini
57ea653f1c
[database] Add AnyDatabase
and ConfigurableDatabase
...
This is related to #43
2020-09-15 15:39:15 +02:00
Alekos Filini
7065c1fed6
Write more docs
2020-09-04 11:44:49 +02:00
Alekos Filini
c0867a6adc
General cleanup for the docs
2020-08-31 15:04:27 +02:00
Alekos Filini
d61e974dbe
Add the license to every file
2020-08-31 11:48:25 +02:00
Alekos Filini
c12aa3d327
Implement RBF and add a few tests
2020-08-14 12:48:07 +02:00
Alekos Filini
9e5023670e
[tests] Add a proc macro to generate tests for OnlineBlockchain
types
2020-08-10 17:18:17 +02:00
Alekos Filini
8d9ccf8d0b
[wallet] Allow limiting the use of internal utxos in TxBuilder
2020-08-10 17:18:13 +02:00
Alekos Filini
ea62337f0d
[database] Replace DerivationPaths with single u32s
2020-06-30 15:21:14 +02:00
Alekos Filini
75a9c30c9a
Add a generalized "Blockchain" interface
2020-05-03 18:16:11 +02:00
Alekos Filini
0988c8b8d5
[database] Add an in-memory database
2020-04-29 18:06:09 +02:00
Alekos Filini
2a7c7d5272
Policy and contribution
2020-04-07 11:17:46 +02:00
Alekos Filini
1a4e1bd96c
Wallet logic
2020-04-07 11:16:53 +02:00
Alekos Filini
4919ff148b
Move everything in the root
2020-02-07 12:27:10 +01:00