* [Bitcoin-development] Lock protocol version numbers @ 2011-11-02 21:23 Amir Taaki 2011-11-02 21:32 ` Christian Decker ` (2 more replies) 0 siblings, 3 replies; 17+ messages in thread From: Amir Taaki @ 2011-11-02 21:23 UTC (permalink / raw) To: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 277 bytes --] Hey, Can we lock the version numbers to be the protocol version (which changes rarely) and instead use the sub_version_num field + revision number for individual builds? Satoshi 0.4 BitcoinJava 120311 bitcoin-js 6 Like so. Otherwise we will have version bumping insanity :) [-- Attachment #2: Type: text/html, Size: 526 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-02 21:23 [Bitcoin-development] Lock protocol version numbers Amir Taaki @ 2011-11-02 21:32 ` Christian Decker [not found] ` <CABsx9T0zUCu2RFC0Nc4URMtu060wyHMaebEM87in=NSiNbp=rw@mail.gmail.com> 2011-11-05 14:32 ` Mike Hearn 2 siblings, 0 replies; 17+ messages in thread From: Christian Decker @ 2011-11-02 21:32 UTC (permalink / raw) To: Amir Taaki; +Cc: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 1084 bytes --] I don't really get what you want to achieve with this. The protocol will be slow down evolution (hopefully) soon, while the clients will continue releasing at a similar rhythm. It took long enough to decouple the protocol version from being bumped each client release, now doing the inverse coupling makes no sense. Regards, Chris On Wed, Nov 2, 2011 at 10:23 PM, Amir Taaki <zgenjix@yahoo.com> wrote: > Hey, > > Can we lock the version numbers to be the protocol version (which changes > rarely) and instead use the sub_version_num field + revision number for > individual builds? > > Satoshi 0.4 > BitcoinJava 120311 > bitcoin-js 6 > > Like so. Otherwise we will have version bumping insanity :) > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Bitcoin-development mailing list > Bitcoin-development@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/bitcoin-development > > [-- Attachment #2: Type: text/html, Size: 1800 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
[parent not found: <CABsx9T0zUCu2RFC0Nc4URMtu060wyHMaebEM87in=NSiNbp=rw@mail.gmail.com>]
* Re: [Bitcoin-development] Lock protocol version numbers [not found] ` <CABsx9T0zUCu2RFC0Nc4URMtu060wyHMaebEM87in=NSiNbp=rw@mail.gmail.com> @ 2011-11-02 22:33 ` Amir Taaki 2011-11-02 22:42 ` Christian Decker 2011-11-02 22:46 ` Luke-Jr 0 siblings, 2 replies; 17+ messages in thread From: Amir Taaki @ 2011-11-02 22:33 UTC (permalink / raw) To: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 1199 bytes --] Point taken. About the sub_version_num though. I prefer to let the field by defined clients however they wish, with just a guideline suggestion that IDENTIFIER VERSION is a format they should follow. The idea being that different projects would have different release scheduling schemes and it'd be restrictive to lock people into the popular major.minor system. So for the current bitcoin to find out the version number of other clients (if it was needed), it would have to parse the number from the string: "Satoshi 0.5" Although there would be little reason for this with a sane protocol versioning scheme. If we're agreed then I'll start on that BIP. ________________________________ From: Gavin Andresen <gavinandresen@gmail.com> To: Amir Taaki <zgenjix@yahoo.com> Sent: Wednesday, November 2, 2011 9:34 PM Subject: Re: [Bitcoin-development] Lock protocol version numbers Good idea. Sounds perfect for a BIP.... On Wed, Nov 2, 2011 at 5:23 PM, Amir Taaki <zgenjix@yahoo.com> wrote: > Hey, > Can we lock the version numbers to be the protocol version (which changes > rarely) and instead use the sub_version_num field + revision number for > individual builds? -- -- Gavin Andresen [-- Attachment #2: Type: text/html, Size: 2232 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-02 22:33 ` Amir Taaki @ 2011-11-02 22:42 ` Christian Decker 2011-11-02 22:58 ` Amir Taaki 2011-11-02 22:46 ` Luke-Jr 1 sibling, 1 reply; 17+ messages in thread From: Christian Decker @ 2011-11-02 22:42 UTC (permalink / raw) To: Amir Taaki; +Cc: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 1961 bytes --] Just for reference: https://github.com/bitcoin/bitcoin/pull/63 The issue resulted in my most useless pull request fixing two variables :-) I second the use of sub_version_num as a Client and Version identifier. Regards, Chris On Wed, Nov 2, 2011 at 11:33 PM, Amir Taaki <zgenjix@yahoo.com> wrote: > Point taken. > > About the sub_version_num though. I prefer to let the field by defined > clients however they wish, with just a guideline suggestion that IDENTIFIER > VERSION is a format they should follow. > > The idea being that different projects would have different release > scheduling schemes and it'd be restrictive to lock people into the popular > major.minor system. > > So for the current bitcoin to find out the version number of other clients > (if it was needed), it would have to parse the number from the string: > > "Satoshi 0.5" > > Although there would be little reason for this with a sane protocol > versioning scheme. > > If we're agreed then I'll start on that BIP. > > ------------------------------ > *From:* Gavin Andresen <gavinandresen@gmail.com> > *To:* Amir Taaki <zgenjix@yahoo.com> > *Sent:* Wednesday, November 2, 2011 9:34 PM > *Subject:* Re: [Bitcoin-development] Lock protocol version numbers > > Good idea. > > Sounds perfect for a BIP.... > > > On Wed, Nov 2, 2011 at 5:23 PM, Amir Taaki <zgenjix@yahoo.com> wrote: > > Hey, > > Can we lock the version numbers to be the protocol version (which changes > > rarely) and instead use the sub_version_num field + revision number for > > individual builds? > > -- > -- > Gavin Andresen > > > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Bitcoin-development mailing list > Bitcoin-development@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/bitcoin-development > > [-- Attachment #2: Type: text/html, Size: 3677 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-02 22:42 ` Christian Decker @ 2011-11-02 22:58 ` Amir Taaki 0 siblings, 0 replies; 17+ messages in thread From: Amir Taaki @ 2011-11-02 22:58 UTC (permalink / raw) To: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 2309 bytes --] Cool thread. I enjoyed reading that :) Thanks for sharing. ________________________________ From: Christian Decker <decker.christian@gmail.com> To: Amir Taaki <zgenjix@yahoo.com> Cc: "bitcoin-development@lists.sourceforge.net" <bitcoin-development@lists.sourceforge.net> Sent: Wednesday, November 2, 2011 10:42 PM Subject: Re: [Bitcoin-development] Lock protocol version numbers Just for reference: https://github.com/bitcoin/bitcoin/pull/63 The issue resulted in my most useless pull request fixing two variables :-) I second the use of sub_version_num as a Client and Version identifier. Regards, Chris On Wed, Nov 2, 2011 at 11:33 PM, Amir Taaki <zgenjix@yahoo.com> wrote: Point taken. > > >About the sub_version_num though. I prefer to let the field by defined clients however they wish, with just a guideline suggestion that IDENTIFIER VERSION is a format they should follow. > > >The idea being that different projects would have different release scheduling schemes and it'd be restrictive to lock people into the popular major.minor system. > > >So for the current bitcoin to find out the version number of other clients (if it was needed), it would have to parse the number from the string: > > >"Satoshi 0.5" > > >Although there would be little reason for this with a sane protocol versioning scheme. > > >If we're agreed then I'll start on that BIP. > > > >________________________________ >From: Gavin Andresen <gavinandresen@gmail.com> >To: Amir Taaki <zgenjix@yahoo.com> >Sent: Wednesday, November 2, 2011 9:34 PM >Subject: Re: [Bitcoin-development] Lock protocol version numbers > >Good idea. > >Sounds perfect for a BIP.... > > >On Wed, Nov 2, 2011 at 5:23 PM, Amir Taaki <zgenjix@yahoo.com> wrote: >> Hey, >> Can we lock the version numbers to be the protocol version (which changes >> rarely) and instead use the sub_version_num field + revision number for >> individual builds? > >-- >-- >Gavin Andresen > > > >------------------------------------------------------------------------------ >RSA(R) Conference 2012 >Save $700 by Nov 18 >Register now >http://p.sf.net/sfu/rsa-sfdev2dev1 >_______________________________________________ >Bitcoin-development mailing list >Bitcoin-development@lists.sourceforge.net >https://lists.sourceforge.net/lists/listinfo/bitcoin-development > > [-- Attachment #2: Type: text/html, Size: 5244 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-02 22:33 ` Amir Taaki 2011-11-02 22:42 ` Christian Decker @ 2011-11-02 22:46 ` Luke-Jr 2011-11-02 22:55 ` Amir Taaki 1 sibling, 1 reply; 17+ messages in thread From: Luke-Jr @ 2011-11-02 22:46 UTC (permalink / raw) To: bitcoin-development On Wednesday, November 02, 2011 6:33:12 PM Amir Taaki wrote: > "Satoshi 0.5" What is "Satoshi 0.5" anyway? 0.5's server is bitcoind and GUI is Bitcoin-Qt; the wx GUI client is gone, which is more or less what "Satoshi" referred to in the past... ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-02 22:46 ` Luke-Jr @ 2011-11-02 22:55 ` Amir Taaki 2011-11-02 23:07 ` Luke-Jr 0 siblings, 1 reply; 17+ messages in thread From: Amir Taaki @ 2011-11-02 22:55 UTC (permalink / raw) To: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 986 bytes --] Bitcoin is the protocol. The client protocol identifier needs a unique name. It is not a public name that anybody ever sees except protocol developers. For instance with libbitcoin, there might be several clients using it, but they'd all have the same protocol identifier. I think calling it Satoshi is apt homage to the person who made the original client reference protocol. Satoshi BitcoinCommunityOriginal ... Take your pick. ________________________________ From: Luke-Jr <luke@dashjr.org> To: "bitcoin-development@lists.sourceforge.net" <bitcoin-development@lists.sourceforge.net> Cc: Amir Taaki <zgenjix@yahoo.com> Sent: Wednesday, November 2, 2011 10:46 PM Subject: Re: [Bitcoin-development] Lock protocol version numbers On Wednesday, November 02, 2011 6:33:12 PM Amir Taaki wrote: > "Satoshi 0.5" What is "Satoshi 0.5" anyway? 0.5's server is bitcoind and GUI is Bitcoin-Qt; the wx GUI client is gone, which is more or less what "Satoshi" referred to in the past... [-- Attachment #2: Type: text/html, Size: 1928 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-02 22:55 ` Amir Taaki @ 2011-11-02 23:07 ` Luke-Jr 2011-11-02 23:22 ` Christian Decker 0 siblings, 1 reply; 17+ messages in thread From: Luke-Jr @ 2011-11-02 23:07 UTC (permalink / raw) To: bitcoin-development, Amir Taaki On Wednesday, November 02, 2011 6:55:27 PM Amir Taaki wrote: > I think calling it Satoshi is apt homage to the person who made the > original client reference protocol. My point is that the "Satoshi client" was the wxWidgets client, which was retired by 0.5. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-02 23:07 ` Luke-Jr @ 2011-11-02 23:22 ` Christian Decker 2011-11-03 4:46 ` Jeff Garzik 0 siblings, 1 reply; 17+ messages in thread From: Christian Decker @ 2011-11-02 23:22 UTC (permalink / raw) To: Luke-Jr; +Cc: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 936 bytes --] The mainline client (independently from the GUI) has been referenced to as "Satoshi" client. I personally like the name as a homage, but I guess it all comes down to the decision of the maintainers. Regards, Chris On Thu, Nov 3, 2011 at 12:07 AM, Luke-Jr <luke@dashjr.org> wrote: > On Wednesday, November 02, 2011 6:55:27 PM Amir Taaki wrote: > > I think calling it Satoshi is apt homage to the person who made the > > original client reference protocol. > > My point is that the "Satoshi client" was the wxWidgets client, which was > retired by 0.5. > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Bitcoin-development mailing list > Bitcoin-development@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/bitcoin-development > [-- Attachment #2: Type: text/html, Size: 1545 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-02 23:22 ` Christian Decker @ 2011-11-03 4:46 ` Jeff Garzik 0 siblings, 0 replies; 17+ messages in thread From: Jeff Garzik @ 2011-11-03 4:46 UTC (permalink / raw) To: Christian Decker; +Cc: bitcoin-development On Wed, Nov 2, 2011 at 7:22 PM, Christian Decker <decker.christian@gmail.com> wrote: > The mainline client (independently from the GUI) has been referenced to as > "Satoshi" client. I personally like the name as a homage, but I guess it all > comes down to the decision of the maintainers. That's how I take it to mean: "satoshi client" is the client -started- by satoshi, that is actively distributed through github.com/bitcoin/bitcoin and bitcoin.org-linked downloads. Changing to QT doesn't change the lingo. -- Jeff Garzik exMULTI, Inc. jgarzik@exmulti.com ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-02 21:23 [Bitcoin-development] Lock protocol version numbers Amir Taaki 2011-11-02 21:32 ` Christian Decker [not found] ` <CABsx9T0zUCu2RFC0Nc4URMtu060wyHMaebEM87in=NSiNbp=rw@mail.gmail.com> @ 2011-11-05 14:32 ` Mike Hearn 2011-11-05 14:45 ` Christian Decker 2 siblings, 1 reply; 17+ messages in thread From: Mike Hearn @ 2011-11-05 14:32 UTC (permalink / raw) To: Amir Taaki; +Cc: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 64 bytes --] BitCoinJ already sets the subver field to its name and version. [-- Attachment #2: Type: text/html, Size: 72 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-05 14:32 ` Mike Hearn @ 2011-11-05 14:45 ` Christian Decker [not found] ` <1320507570.40074.YahooMailNeo@web121017.mail.ne1.yahoo.com> 0 siblings, 1 reply; 17+ messages in thread From: Christian Decker @ 2011-11-05 14:45 UTC (permalink / raw) To: Mike Hearn; +Cc: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 656 bytes --] On BitDroid I stopped updating the protocol version at 31700 and set the string to be both Version and Client, just like BitcoinJ :-) On Sat, Nov 5, 2011 at 3:32 PM, Mike Hearn <mike@plan99.net> wrote: > BitCoinJ already sets the subver field to its name and version. > > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Bitcoin-development mailing list > Bitcoin-development@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/bitcoin-development > > [-- Attachment #2: Type: text/html, Size: 1140 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
[parent not found: <1320507570.40074.YahooMailNeo@web121017.mail.ne1.yahoo.com>]
* Re: [Bitcoin-development] Lock protocol version numbers [not found] ` <1320507570.40074.YahooMailNeo@web121017.mail.ne1.yahoo.com> @ 2011-11-05 15:39 ` Amir Taaki 2011-11-05 16:17 ` Christian Decker 0 siblings, 1 reply; 17+ messages in thread From: Amir Taaki @ 2011-11-05 15:39 UTC (permalink / raw) To: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 1582 bytes --] From talking with Patrick Strateman (phantomcircuit), he suggested this idea (which I will elaborate more on in the BIP): User-agent strings are a good starting point, however they aren't easy for parsing so we'll make a small modification to them. We need a hierarchy from protocol, variant, gui, flavour, build /Satoshi:314700/bitcoin-qt:0.4/ How does that sound? In BitcoinJ's case: /BitcoinJ:0.2/AndroidBuild:0.8/ Thoughts: - Do we need a freely defined comments field? /BitcoinJ:0.2[iPad; U; CPU OS 3_2_1]/AndroidBuild:0.8/ /Satoshi:314700/bitcoin-qt:0.4[Ubuntu Oneiric]/ ________________________________ From: Christian Decker <decker.christian@gmail.com> To: Mike Hearn <mike@plan99.net> Cc: Amir Taaki <zgenjix@yahoo.com>; "bitcoin-development@lists.sourceforge.net" <bitcoin-development@lists.sourceforge.net> Sent: Saturday, November 5, 2011 2:45 PM Subject: Re: [Bitcoin-development] Lock protocol version numbers On BitDroid I stopped updating the protocol version at 31700 and set the string to be both Version and Client, just like BitcoinJ :-) On Sat, Nov 5, 2011 at 3:32 PM, Mike Hearn <mike@plan99.net> wrote: BitCoinJ already sets the subver field to its name and version. > > >------------------------------------------------------------------------------ >RSA(R) Conference 2012 >Save $700 by Nov 18 >Register now >http://p.sf.net/sfu/rsa-sfdev2dev1 >_______________________________________________ >Bitcoin-development mailing list >Bitcoin-development@lists.sourceforge.net >https://lists.sourceforge.net/lists/listinfo/bitcoin-development > > [-- Attachment #2: Type: text/html, Size: 3700 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-05 15:39 ` Amir Taaki @ 2011-11-05 16:17 ` Christian Decker 2011-11-05 16:29 ` Luke-Jr 0 siblings, 1 reply; 17+ messages in thread From: Christian Decker @ 2011-11-05 16:17 UTC (permalink / raw) To: Amir Taaki; +Cc: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 2771 bytes --] Sorry for shooting this approach down, but I'm against it. User-agent strings are an extremely bad idea as it would lead developers to start making communication choices depending on the client type. User-Agents in HTTP are only useful if the clients (browsers) do not adhere to a well defined behavior. I see the version string more as a kind of vanity point (xyz peers are using my network code) and it would be bad to base choices on it. For protocol choices we already have a good mechanism in place (nServices) to negotiate capabilities. I for one vote for keeping it as simple as possible, just a simple string, without any further meaning. On Sat, Nov 5, 2011 at 4:39 PM, Amir Taaki <zgenjix@yahoo.com> wrote: > From talking with Patrick Strateman (phantomcircuit), he suggested this > idea (which I will elaborate more on in the BIP): > > User-agent strings are a good starting point, however they aren't easy for > parsing so we'll make a small modification to them. > > We need a hierarchy from protocol, variant, gui, flavour, build > > /Satoshi:314700/bitcoin-qt:0.4/ > > How does that sound? In BitcoinJ's case: > > /BitcoinJ:0.2/AndroidBuild:0.8/ > > Thoughts: > > - Do we need a freely defined comments field? > > /BitcoinJ:0.2[iPad; U; CPU OS 3_2_1]/AndroidBuild:0.8/ > /Satoshi:314700/bitcoin-qt:0.4[Ubuntu Oneiric]/ > > ------------------------------ > *From:* Christian Decker <decker.christian@gmail.com> > *To:* Mike Hearn <mike@plan99.net> > *Cc:* Amir Taaki <zgenjix@yahoo.com>; " > bitcoin-development@lists.sourceforge.net" < > bitcoin-development@lists.sourceforge.net> > *Sent:* Saturday, November 5, 2011 2:45 PM > *Subject:* Re: [Bitcoin-development] Lock protocol version numbers > > On BitDroid I stopped updating the protocol version at 31700 and set the > string to be both Version and Client, just like BitcoinJ :-) > > On Sat, Nov 5, 2011 at 3:32 PM, Mike Hearn <mike@plan99.net> wrote: > > BitCoinJ already sets the subver field to its name and version. > > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Bitcoin-development mailing list > Bitcoin-development@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/bitcoin-development > > > > > > > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Bitcoin-development mailing list > Bitcoin-development@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/bitcoin-development > > [-- Attachment #2: Type: text/html, Size: 5530 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-05 16:17 ` Christian Decker @ 2011-11-05 16:29 ` Luke-Jr 2011-11-05 16:40 ` Amir Taaki 0 siblings, 1 reply; 17+ messages in thread From: Luke-Jr @ 2011-11-05 16:29 UTC (permalink / raw) To: bitcoin-development On Saturday, November 05, 2011 12:17:58 PM Christian Decker wrote: > Sorry for shooting this approach down, but I'm against it. User-agent > strings are an extremely bad idea as it would lead developers to start > making communication choices depending on the client type. This can be necessary in some cases. What happens when some popular client is found with a subtle bug, and cannot otherwise be differentiated from other similar-functionality clients? I have found User-Agent very valuable when dealing with the wide variety of miner bugs when I have enabled new functionality/behaviour on Eligius. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-05 16:29 ` Luke-Jr @ 2011-11-05 16:40 ` Amir Taaki 2011-11-05 17:30 ` Jordan Mack 0 siblings, 1 reply; 17+ messages in thread From: Amir Taaki @ 2011-11-05 16:40 UTC (permalink / raw) To: bitcoin-development [-- Attachment #1: Type: text/plain, Size: 1388 bytes --] On Saturday, November 05, 2011 12:17:58 PM Christian Decker wrote: >> Sorry for shooting this approach down, but I'm against it. User-agent >> strings are an extremely bad idea as it would lead developers to start >> making communication choices depending on the client type. > This can be necessary in some cases. What happens when some popular client is > found with a subtle bug, and cannot otherwise be differentiated from other > similar-functionality clients? I have found User-Agent very valuable when > dealing with the wide variety of miner bugs when I have enabled new > functionality/behaviour on Eligius. I can agree with this point though. If clients break the network protocol/do not comply properly with it, they should be disconnected and shunned. Hard love. We don't want any ambiguity in the protocol. Fail hard and fast. However my feeling about the user-agent string is that it is a vanity item, but here we'd be enforcing a format that everybody can understand and read. Lets say with libbitcoin- I'm sure that users of libbitcoin would like to have their client name in the string somehow. This was we can quickly understand which code-bases are being used and all the variants that exist build on those code-bases. Together with system information (how many Linux users are there?) and various system settings (how many 32bit users are there), and so on. [-- Attachment #2: Type: text/html, Size: 1803 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [Bitcoin-development] Lock protocol version numbers 2011-11-05 16:40 ` Amir Taaki @ 2011-11-05 17:30 ` Jordan Mack 0 siblings, 0 replies; 17+ messages in thread From: Jordan Mack @ 2011-11-05 17:30 UTC (permalink / raw) To: bitcoin-development > If clients break the network protocol/do not comply properly with it, > they should be disconnected and shunned. Hard love. We don't want any > ambiguity in the protocol. > However my feeling about the user-agent string is that it is a vanity > item, but here we'd be enforcing a format that everybody can > understand and read. I agree with Amir completely on both these points. With something as critical as financial transactions, no exceptions can be made. The reported client and version should be ignored completely. If a client does not comply with the protocol, they must be rejected outright. It is not in the best interest, or ability, to attempt to micromanage how developers choose to use the information given. Recommendations and guidelines can be made, but how they choose to implement is ultimately their decision. In my opinion, clear and concise definition of the protocol, and strict adherence in the mainline client, are the best options available. The protocol version should be indicated so that it can properly be handled. Neither the name of the client, or it's version, need to be reported in this. Protocol validation should ignore this completely. I do not believe that leaving out the client name and version entirely is the best option though. As silly as it may seem to some, vanity and recognition are very strong motivators. We want to encourage more supporters to the scene, not scare them away. The additional data provided by this could also be used for calculating various statistics. It sounds like BitcoinJ and BitDroid have already found ways of adding it in anyway. I believe it is in the best interest of the developers to formalize how this information will be included, and use it to their advantage. TL;DR: Adhere strictly to the protocol, and reject clients that do not. Add a user agent string of some kind, but keep it separate from the protocol version. ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2011-11-05 17:30 UTC | newest] Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2011-11-02 21:23 [Bitcoin-development] Lock protocol version numbers Amir Taaki 2011-11-02 21:32 ` Christian Decker [not found] ` <CABsx9T0zUCu2RFC0Nc4URMtu060wyHMaebEM87in=NSiNbp=rw@mail.gmail.com> 2011-11-02 22:33 ` Amir Taaki 2011-11-02 22:42 ` Christian Decker 2011-11-02 22:58 ` Amir Taaki 2011-11-02 22:46 ` Luke-Jr 2011-11-02 22:55 ` Amir Taaki 2011-11-02 23:07 ` Luke-Jr 2011-11-02 23:22 ` Christian Decker 2011-11-03 4:46 ` Jeff Garzik 2011-11-05 14:32 ` Mike Hearn 2011-11-05 14:45 ` Christian Decker [not found] ` <1320507570.40074.YahooMailNeo@web121017.mail.ne1.yahoo.com> 2011-11-05 15:39 ` Amir Taaki 2011-11-05 16:17 ` Christian Decker 2011-11-05 16:29 ` Luke-Jr 2011-11-05 16:40 ` Amir Taaki 2011-11-05 17:30 ` Jordan Mack
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox