Commit Graph

1072 Commits

Author SHA1 Message Date
Nadav Ivgi 4a7cf34eeb
Use efficient serialization for non-human-readable formats 2021-01-14 19:36:36 +02:00
Nadav Ivgi b70361370b
Make uint types (un)serializable 2021-01-14 19:36:35 +02:00
Nadav Ivgi 67ae602e2a
Implement Uint::from_be_slice()
Needed because Rust 1.29 does not easily allow converting from a slice
into an array.
2021-01-14 19:36:30 +02:00
Nadav Ivgi 3761b0d808 Implement Uint::to_be_bytes() 2021-01-14 19:28:02 +02:00
Andrew Poelstra c9c2e452e2
Merge pull request #533 from apoelstra/2020-12--0.26.0
bump version to 0.26
2021-01-14 17:11:46 +00:00
Andrew Poelstra 010068ba32 bump version to 0.26 2021-01-12 23:26:10 +00:00
Elichai Turkel d2344d3d61
Merge pull request #494 from stevenroose/encode-io-err
Change the signature of consensus_encode to return io::Error's
2021-01-12 21:21:00 +02:00
Steven Roose 61918dfe81
Change the signature of consensus_encode to return io::Error's
This is instead of encode::Errors because the encoders should
not be allowed to return errors that don't originate in the writer
they are writing into.

This is a part of the method definition that has been relied upon for a
while already.
2021-01-12 17:39:41 +00:00
Sebastian 026f2dd4d9
Merge pull request #545 from thomaseizinger/update-secp
Bump to secp256k1 0.20 and don't enable `recovery` of `secp256k1` in the dependency declaration
2021-01-12 11:42:52 +01:00
Andrew Poelstra b48f374c2c
Merge pull request #542 from apoelstra/2021-01--keyread
PublicKey: add read_from method to be symmetric with write_into
2021-01-11 19:50:04 +00:00
Andrew Poelstra 4132e71b08
Merge pull request #546 from sgeisler/2021-01-ci-badge
Switch CI badge to GH actions
2021-01-11 19:49:51 +00:00
Andrew Poelstra f1664db374
Merge pull request #538 from sanket1729/fix_warning
Fix service flags warning
2021-01-11 19:26:08 +00:00
Andrew Poelstra fd41157746
Merge pull request #548 from apoelstra/2021-01--more-encodable
encode: add some more generic impls (more tuples, references)
2021-01-09 23:55:26 +00:00
Andrew Poelstra ef116ffbed Add byteorder pinning for 1.29.0 compatibility
They broke their MSRV in a minor release.

Co-authored-by: Sebastian Geisler <sebastian@blockstream.io>
2021-01-09 16:43:18 +00:00
Andrew Poelstra 4b58a254c5 encode: add some more generic impls (more tuples, references) 2021-01-08 23:21:55 +00:00
Thomas Eizinger e52e48eebb
Don't enable `recovery` of `secp256k1` in the dependency declaration
Enabling this feature in the dependency declaration defeats the point
of exposing a feature in rust-bitcoin that enables this because
cargo currently does not provide a way to disable a once activated feature.
2021-01-06 12:23:51 +11:00
Andrew Poelstra ffe452ac0b script: add FromHex and FromStr implementations 2021-01-05 18:45:14 +01:00
Andrew Poelstra 92000bf51b PublicKey: add read_from method to be symmetric with write_into 2021-01-04 19:07:27 +00:00
Sebastian Geisler bd55fa3eb1 Switch CI badge to GH actions 2021-01-04 14:53:37 +01:00
Thomas Eizinger 68840b65f5
Bump to secp256k1 0.20
This version removes the fuzztarget and endomorphism features.
2021-01-04 15:25:45 +11:00
Max Giraldo 21b2f929c5 refactor(blockdata/transaction): use nested paths
Instead of using a wildcard path for the `hash_types` module,
be explicit about what types we're using by using nested paths.

There are many benefits to this, including not polluting the namespace
and clearly demarcating the types' location.
2021-01-04 00:01:59 +01:00
Andrew Poelstra 0bbecb28e0
Merge pull request #539 from maxgiraldo/2021-01-transaction-ntxid-doc-fix
docs: fix quotes in Transaction#ntxid description
2021-01-03 22:45:11 +00:00
Andrew Poelstra 8730b8cf75
Merge pull request #544 from rust-bitcoin/2021-01--gh-actions
switch to github actions
2021-01-03 21:10:25 +00:00
Sebastian Geisler 9457e85069 move fuzzing from stable to nightly 2021-01-03 18:55:04 +01:00
Sebastian Geisler a1e96c398f Migrate CI to GitHub actions 2021-01-01 22:34:51 +01:00
Max Giraldo 06dc0041c2 docs: fix quotes in Transaction#ntxid description
Insert double quotes instead of a combination of single quote
and backtick.
2021-01-01 05:52:23 -08:00
Andrew Poelstra ed9856f800 ci: pin serde and serde-derive for Rust 1.29.0 2020-12-30 16:32:52 +01:00
Steven Roose a8f2faf96d serde_utils: Only use special serialization for human-readable
Non-human-readable serialization (binary) doesn't need hexification.
2020-12-30 16:32:52 +01:00
Steven Roose 5fd92d1c09 psbt: Serialize maps with byte values using hex 2020-12-30 16:32:52 +01:00
Steven Roose a05f8feec6 serde_util: Rename the btreemap module to btreemap_as_seq
So that we can later distinguish other modules over maps.
2020-12-30 16:32:52 +01:00
Steven Roose a9c13272a0 psbt: Fix serde for maps with non-string keys and binary values 2020-12-30 16:32:52 +01:00
Steven Roose e5f3bca2b4 Add serde_utils module to fix JSON serialization 2020-12-30 16:32:52 +01:00
Steven Roose cdedb0a9d5 psbt::raw: Use hex::format_hex to format the raw key bytes 2020-12-30 16:32:52 +01:00
Steven Roose 94b7371424 Replace serde_struct_impl with derive-based impls 2020-12-30 16:32:52 +01:00
Steven Roose d527a2c2cf Remove the impl_array_newtype_show macro
Instead, implement Debug in impl_bytes_newtype.
2020-12-30 16:32:52 +01:00
Andrew Poelstra 0ab8823984
Merge pull request #536 from 0xB10C/2020-12-add-blockheader-tests
Add BlockHeader tests
2020-12-28 16:56:56 +00:00
Andrew Poelstra 1cc466fec6
Merge pull request #498 from LNP-BP/pending/derivation
Derivation path improvements, closes #473
2020-12-28 00:53:25 +00:00
0xB10C b7caf0110f test: BlockHeader::difficulty()
https://github.com/rust-bitcoin/rust-bitcoin/issues/462
2020-12-26 11:33:54 +01:00
0xB10C 4eca40dcc1 test: BlockHeader::validate_pow()
https://github.com/rust-bitcoin/rust-bitcoin/issues/462#issuecomment-683916241
2020-12-26 11:33:39 +01:00
0xB10C d5bf5c88a3 test: BlockHeader::work()
https://github.com/rust-bitcoin/rust-bitcoin/issues/462#issuecomment-683916241
2020-12-26 11:33:22 +01:00
sanket1729 62fb1ec7e6 fix service flags warning 2020-12-23 09:59:42 -06:00
Andrew Poelstra 3c1117305f
Merge pull request #471 from LNP-BP/feat/psbt-keytypes
PSBT proprietary key system matching BIP 174
2020-12-21 15:41:06 +00:00
Andrew Poelstra 65c972b0b0
Merge pull request #496 from stevenroose/exhaustive-enums
Make Inventory and NetworkMessage enums exhaustive
2020-12-21 15:17:22 +00:00
Steven Roose 767b14f696
Make Inventory and NetworkMessage enums exhaustive
Both by added an `Unknown` variant.
2020-12-21 12:04:26 +00:00
Steven Roose 944371d6a2
Clean up CommandString
- Add length invariant.
- Siimplify constructors.
2020-12-21 11:56:51 +00:00
Dr Maxim Orlovsky 7400bccb60
PSBT: proprietary keys type system according to BIP 174 2020-12-21 12:22:35 +01:00
Dr Maxim Orlovsky c3024c3ebb
PSBT: basic support for proprietary keys 2020-12-21 12:17:07 +01:00
Dr Maxim Orlovsky 44ffddab8c
Impl IntoDerivationPath for string types 2020-12-20 23:39:01 +01:00
Dr Maxim Orlovsky f9290438cd
DerivationPath improvements
Adding IntoDerivationPath trait
DerivationPath is_master function
DerivationPath constructor for empty path + Default impl
2020-12-20 23:39:01 +01:00
Andrew Poelstra a6264cfca6
Merge pull request #499 from LNP-BP/pending/psbt-global
New PSBT global keys
2020-12-20 21:27:57 +00:00