From: Zaidan <ZaidanK@proton.me>
To: bitcoin-dev@lists.linuxfoundation.org
Subject: [bitcoin-dev] New User experience with the Bitcoin-Cli
Date: Wed, 17 Aug 2022 21:02:33 +0000 [thread overview]
Message-ID: <9inVCADZPkjUs5LKcfoMfrbaMNADGfTlVz1xYLi3722jNUC-vyoiEHYF21FFwut1DMiPHroGy7nQTww_hwb6OCi__IN7WL__9Bb4ZYCmUyg=@proton.me> (raw)
[-- Attachment #1: Type: text/plain, Size: 2589 bytes --]
I recently started running a node and learning how to be effective with it from The Blockchain Commons project here.
https://github.com/BlockchainCommons/Learning-Bitcoin-from-the-Command-Line
Granted, I am new at this, I may have tied my shoe laces together and wanted to get feedback on what I experienced and perhaps suggest some fixes.
With chain=<chain> set in the bitcoin.conf and then mistakenly combined with a network argument such as -testnet it provides the error message "
EXCEPTION: St13runtime_error
Invalid combination of -regtest, -signet, -testnet and -chain. Can use at most one."
As a novice, I didn't quite understand where this collision was coming from or why as I copied the conf file from an old setup. I got some help from the bitcoin-dev irc and worked it out. I was told there is currently no way of notifying where the arguments are coming from a config file or client arguments. Would an new argument options category being applied to arguments being set when the .conf file is being ingested by ArgsManager.ReadConfigFiles help? I see an enum class called Source which is used with MergeSettings. Perhaps that could be of help for generating a more descriptive warning in ArgsManager::GetChainName?
My second novice mistake was the mix naming of test and testnet. The command 'bitcoin-cli -chain=testnet' was failing me. having 'bitcoin-cli -testnet' be the equivalent of 'bitcoin-cli -chain=test' caused confusion leading to my opinion that it would be beneficial for the names to match CBaseChainParams network names.
argsman.AddArg("-chain=<chain>", "Use the chain <chain> (default: main). Allowed values: main, test, signet, regtest", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS);
argsman.AddArg("-testnet", "Use the test chain. Equivalent to -chain=test.", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS);
Would SetupChainParamsBaseOptions benefit from changing the added argument -testnet to -test to match the CBaseChainParams or add the argument of -test to maintain backwards capability.
Last, this is the first time I'm dipping my toe into contributing to this software. I've read a fair amount of guides before I got started online and through Chaincode's educational endeavors. I hope this doesn't seem like bike-shedding, but a novices attempt to contribute in good faith.
Any feedback of how this issue is presented will be warmly welcomed. I am looking forward to improving my effectiveness at engaging with this community.
Thank you for your time,
Zaidan
Sent with [Proton Mail](https://proton.me/) secure email.
[-- Attachment #2: Type: text/html, Size: 9123 bytes --]
reply other threads:[~2022-08-17 21:03 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='9inVCADZPkjUs5LKcfoMfrbaMNADGfTlVz1xYLi3722jNUC-vyoiEHYF21FFwut1DMiPHroGy7nQTww_hwb6OCi__IN7WL__9Bb4ZYCmUyg=@proton.me' \
--to=zaidank@proton.me \
--cc=bitcoin-dev@lists.linuxfoundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox