Commit Graph

1750 Commits

Author SHA1 Message Date
JP Rupp
1f67df15aa
Move to crypton for now 2024-07-23 22:13:16 +01:00
JP Rupp
48d373b943
Update upstream & LTS Haskell 2024-03-14 12:41:04 +00:00
alexfmpe
29e4173002
Build under ghc 9.8 (#419) 2024-03-07 10:15:22 +00:00
JP Rupp
529f082c0c
Prepare for release 2024-01-31 13:33:17 +00:00
JP Rupp
09f8fbbd4f
Bump secp256k1-haskell dependency 2023-11-01 12:47:03 +00:00
Philippe Laprade
88ff19c35a Export the BIP39 word list and add new BIP39 test vectors 2023-10-11 11:10:51 +02:00
Philippe Laprade
520b0b241f
Utilities for testing Marshal and MarshalJSON classes (#415)
* Adding tools for performing Marshal and MarshalJSON identity tests

* New dependency on data-default

* Renamed some arbitrary (test) functions for clarity
2023-09-02 08:56:02 +02:00
JP Rupp
cd03cad4c1
Release 1.0.2 2023-08-31 20:23:12 +01:00
JP Rupp
296a8dcc30
Add compatibility with latest nightly LTS Haskell 2023-08-03 20:20:28 +01:00
JP Rupp
e1bfe4e7f4
Update CHANGELOG with last release date 2023-07-28 20:03:40 +01:00
JP Rupp
8fb472f60d
Backwards-incompatible modernisation of package
- Shorten all field names ignoring duplicates using DuplicateRecordFields extension.
- Use OverloadedRecordDot language extension and syntax.
- Use explicit context object from secp256k1-haskell library.
- Unify serialization into custom Marhsal and MarshalJSON classes.
- Use bytestring builders for all JSON toEncoding implementations.
- Use ormolu for formatting.
- Simplify module organisation.
- Strongly break backwards compatibility.
2023-07-28 19:48:43 +01:00
JP Rupp
64ceb860e1
Upgrade to latest secp256k1 and base16 2023-06-28 15:08:41 +01:00
JP Rupp
2a13ee8be2
Serialisation test now also checks lazy bytestrings 2022-04-13 14:23:17 +01:00
JP Rupp
3129682e4d
Formatting 2021-12-25 18:05:36 +00:00
JP Rupp
19ea0cac1a
Faster Base58 2021-12-13 09:06:38 +00:00
Ian Shipman
ffb7b44f98
Adds taproot support (no signing) (#404)
* Express taproot output structure
* Derive external key
* Parse taproot witness data
2021-11-23 12:13:39 +00:00
JP Rupp
d155f8803c
Testnet4 & format (#406)
* Support Bitcoin Cash Testnet4

* Changge pre-commit.sh to format
2021-11-23 12:09:45 +00:00
JP Rupp
bdb6eba6c4
Add release script 2021-11-03 22:06:47 +00:00
Ian Shipman
d49455a277
Formatting and linting (#403)
* Updates readme and adds pre-commit hook

* Reformats codebase

* Applies some hlint suggestions

Certain suggestions led to worse code IMO, so I skipped them
2021-11-03 20:05:01 +00:00
Matthew Wraith
ec3766f693
Merge pull request #402 from GambolingPangolin/sign-psbt
Adds PSBT signing capability
2021-11-01 17:02:15 -07:00
Ian Shipman
d1483b1423 Adds PSBT signing capability 2021-10-26 12:08:02 -05:00
Matthew Wraith
18588ed9bb
Merge pull request #401 from GambolingPangolin/fingerprint-aeson-instances
Adds aeson instances for Fingerprint
2021-10-21 23:31:42 -07:00
Ian Shipman
d6cb65b967 Adds aeson instances for Fingerprint
Also adds helper functions for marshalling to/from text
2021-10-21 15:38:49 -05:00
Matthew Wraith
000bded39c
Merge pull request #400 from GambolingPangolin/psbt-fixes
PSBT bug fixes
2021-10-20 13:51:57 -07:00
Ian Shipman
fd19adf5e6 PSBT fixes
- Makes serialization agree with bitcoin core
- Fixes bugs in `finalizeTransaction`
- Handle P2SH outputs correctly
- Adds a complex test vector covering more of the PSBT spec
2021-10-20 14:42:29 -05:00
Matthew Wraith
e24b69eb7e
Merge pull request #398 from GambolingPangolin/harmonize-fingerprint-encoding
Change representation for fingerprints
2021-10-20 12:29:41 -07:00
Ian Shipman
1d9454b4fb Use a newtype for Fingerprint
This also changes the read/show instances to use hex strings and adds an
IsString instance.
2021-10-18 18:18:09 -05:00
Ian Shipman
8dd1a74215 Harmonize byte order
This makes the serialization of fingerprints and key indices for PSBTs
match the serialization used in the extended key module
2021-10-03 17:35:40 -05:00
JP Rupp
9527625d2b
Bump Stackage version 2021-09-13 21:11:49 +01:00
JP Rupp
408720db04
Support Bech32m address format for Taproot 2021-09-13 20:42:03 +01:00
JP Rupp
147152343c
Fix witness decoder 2021-06-08 16:09:57 +01:00
JP Rupp
73fcd3c401
Allow unknown inv types 2021-05-17 18:06:29 +01:00
JP Rupp
51a5358fe3
Allow unknown packages without payload 2021-05-17 13:45:47 +01:00
JP Rupp
04661a9a86
Fix binary search 2021-05-14 11:04:19 +01:00
JP Rupp
1196c5a3ef
Use the bytes library for serialization 2021-02-22 11:31:21 +00:00
Jean-Pierre Rupp
323433e680
Fix tests and make extended keys hashable 2021-01-25 18:23:01 +00:00
Jean-Pierre Rupp
a195c2b3dc
Fix arbitrary instance for segwit addresses 2021-01-08 11:42:38 +00:00
Jean-Pierre Rupp
ee44a7e5f7
Support bech32 addresses with versions other than 0 2020-12-10 19:21:57 +00:00
Jean-Pierre Rupp
6f120c7bda
Serialize instances for XPubKey and XPrvKey 2020-12-07 12:46:41 +00:00
Jean-Pierre Rupp
aa43835bef
Handle binary search special case 2020-12-03 13:03:44 +00:00
Jean-Pierre Rupp
f34b25f012
Fix broken block binary search algorithm 2020-12-03 12:01:40 +00:00
Jean-Pierre Rupp
4e4ed8163b
Drop minimum version of text dependency 2020-11-17 18:35:14 +00:00
Jean-Pierre Rupp
8c99e6981f
Update LTS Haskell 2020-11-17 11:16:13 +00:00
Jean-Pierre Rupp
fc56a54128
Update seeds 2020-11-17 10:57:58 +00:00
Ian Shipman
ff6eb8578f
Adds support for base16-bytestring >=1 (#395) 2020-11-02 12:03:52 +00:00
JP Rupp
e3d4385046
ASERT (#394)
Support Bitcoin Cash November 2020 hard fork.
2020-10-21 12:01:48 +01:00
Jean-Pierre Rupp
202dd677f3
Release new version 2020-07-23 17:24:16 +01:00
Jean-Pierre Rupp
c90b178dd4
Update secp256k1 bindings 2020-07-21 23:54:54 +01:00
Ian Shipman
508a318879
renames opcodes (#392)
* OP_NOP2 changed to OP_CHECKLOCKTIMEVERIFY (Dec 2015 fork)
* OP_NOP3 changed to OP_CHECKSEQUENCEVERIFY (July 2016 fork)
2020-07-04 15:17:21 +01:00
Jean-Pierre Rupp
a0875de08a
Change license to MIT on individual files 2020-06-24 13:34:03 +01:00