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