Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: Coding Enthusiast on March 09, 2019, 07:23:03 AM



Title: What are the conditions for adding a new reference implementation to a BIP
Post by: Coding Enthusiast on March 09, 2019, 07:23:03 AM
Generally speaking what kind of conditions should an implementation meet to be added to a BIP as a reference implementation?

Specifically speaking In case of BIPs that already have implementations in certain language listed but the implementation is not so good. (I usually try to contact the developer and get the already existing code fixed but sometimes it is easier to make a new one rather than changing the old code.)


Title: Re: What are the conditions for adding a new reference implementation to a BIP
Post by: odolvlobo on March 11, 2019, 07:16:35 AM
Generally speaking what kind of conditions should an implementation meet to be added to a BIP as a reference implementation?

Specifically speaking In case of BIPs that already have implementations in certain language listed but the implementation is not so good. (I usually try to contact the developer and get the already existing code fixed but sometimes it is easier to make a new one rather than changing the old code.)

BIPs are published on github (https://github.com/bitcoin/bips). Here is what the README says about submitting or modifying a BIP:

Quote
People wishing to submit BIPs, first should propose their idea or document to the bitcoin-dev@lists.linuxfoundation.org mailing list. After discussion, please open a PR. After copy-editing and acceptance, it will be published here.


Title: Re: What are the conditions for adding a new reference implementation to a BIP
Post by: Coding Enthusiast on March 11, 2019, 08:36:50 AM
@odolvlobo
That is not what I was looking for, I am not planning on modifying the BIP itself or submit a new one. Just the "implementations".
For example these (https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki#reference-implementations) are reference implementations for bech32 encoding, it lacks c#, or this has only one c# implementation (https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki#other-implementations) and is pretty bad (IMO) because of its unnecessary complications.
So my question is if I wanted to submit my BIP39 implementation which I already have or maybe if I wanted to add the bech32 that doesn't exist, what are the things that I should consider? For example of the top of my head should it only be implementation of that particular BIP or can it be part of the bigger library having other stuff?


Title: Re: What are the conditions for adding a new reference implementation to a BIP
Post by: odolvlobo on March 11, 2019, 09:26:27 AM
@odolvlobo
That is not what I was looking for, I am not planning on modifying the BIP itself or submit a new one. Just the "implementations".
For example these (https://github.com/bitcoin/bips/blob/master/bip-0173.mediawiki#reference-implementations) are reference implementations for bech32 encoding, it lacks c#, or this has only one c# implementation (https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki#other-implementations) and is pretty bad (IMO) because of its unnecessary complications.
So my question is if I wanted to submit my BIP39 implementation which I already have or maybe if I wanted to add the bech32 that doesn't exist, what are the things that I should consider? For example of the top of my head should it only be implementation of that particular BIP or can it be part of the bigger library having other stuff?

I assume that you would change the BIP and include links to your implementations. Anyway, if you can't get a good answer to your questions, you might contact luke-jr. He maintains the BIPs.