-
Notifications
You must be signed in to change notification settings - Fork 179
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove coincurve dependency, use python-bitcointx #1134
Conversation
This is marked [WIP] while a few things still need to be done:
|
This commit changes the underlying functions used in jmbitcoin from the private and public key primitives in coincurve and replaces them with equivalent primitives CKey and CPubKey from python-bitcointx, this removes the need to install coincurve and its own bundled libsecp256k1 dynamic library. Note that an additional pubkey_tweak_mul function is exposed with ctypes from python-bitcointx's bundled libsecp256k1 library.
4e9439d
to
537e317
Compare
As of 537e317 I'm now happy with merge of this. Will do a few more tests of minor functions, i.e. various different wallet methods and payjoin, before actually merging. Other review and test contributions would be very much appreciated! |
Have now tested all the relevant wallet-tool methods (i.e. ones involving keys or transactions somehow), and payjoin between a master-branch receiver and a this-branch sender (which also tests the PSBT signing code under the hood). Everything seems to be working correctly. |
Concept ACK on removing extra dependencies. Will do some testing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 537e317. Didn't notice any problems in my tests.
Thanks for review, merging, will probably add #1098 after some more checking and testing. |
This commit changes the underlying functions used in
jmbitcoin from the private and public key primitives
in coincurve and replaces them with equivalent
primitives CKey and CPubKey from python-bitcointx,
this removes the need to install coincurve and its
own bundled libsecp256k1 dynamic library.
Note that an additional pubkey_tweak_mul function
is exposed with ctypes from python-bitcointx's
bundled libsecp256k1 library.