mirror of
https://github.com/Retropex/bitcoin.git
synced 2025-06-02 15:32:34 +02:00
Merge #17750: util: change GetWarnings parameter to bool
7aab8d1024
[style] Code style fixups in GetWarnings() (John Newbery)492c6dc1e7
util: change GetWarnings parameter to bool (John Newbery)869b6314fd
[qt] remove unused parameter from getWarnings() (John Newbery) Pull request description: `GetWarnings()` changes the format of the output warning string based on a passed-in string argument that can be set to "gui" or "statusbar". Change the argument to a bool: - there are only two types of behaviour, so a bool is a more natural argument type - changing the name to `verbose` does not set any expectations for the how the calling code will use the returned string (currently, `statusbar` is used for RPC warnings, not a status bar) - removes some error-handling code for when the passed-in string is not one of the two strings expected. ACKs for top commit: laanwj: code review ACK7aab8d1024
practicalswift: ACK7aab8d1024
-- diff looks correct :) MarcoFalke: ACK7aab8d1024
otherwise. promag: Code review ACK7aab8d1024
. Tree-SHA512: 75882c6e3e44aa9586411b803149b36ba487f4eb9cac3f5c8f07cd9f586870bba4488a51e674cf8147f05718534f482836e6a4e3f66e0d4ef6821900c7dfd04e
This commit is contained in:
commit
f9fd3a27fd
@ -68,7 +68,7 @@ public:
|
|||||||
std::string getNetwork() override { return Params().NetworkIDString(); }
|
std::string getNetwork() override { return Params().NetworkIDString(); }
|
||||||
void initLogging() override { InitLogging(); }
|
void initLogging() override { InitLogging(); }
|
||||||
void initParameterInteraction() override { InitParameterInteraction(); }
|
void initParameterInteraction() override { InitParameterInteraction(); }
|
||||||
std::string getWarnings(const std::string& type) override { return GetWarnings(type); }
|
std::string getWarnings() override { return GetWarnings(true); }
|
||||||
uint32_t getLogCategories() override { return LogInstance().GetCategoryMask(); }
|
uint32_t getLogCategories() override { return LogInstance().GetCategoryMask(); }
|
||||||
bool baseInitialize() override
|
bool baseInitialize() override
|
||||||
{
|
{
|
||||||
|
@ -78,7 +78,7 @@ public:
|
|||||||
virtual void initParameterInteraction() = 0;
|
virtual void initParameterInteraction() = 0;
|
||||||
|
|
||||||
//! Get warnings.
|
//! Get warnings.
|
||||||
virtual std::string getWarnings(const std::string& type) = 0;
|
virtual std::string getWarnings() = 0;
|
||||||
|
|
||||||
// Get log flags.
|
// Get log flags.
|
||||||
virtual uint32_t getLogCategories() = 0;
|
virtual uint32_t getLogCategories() = 0;
|
||||||
|
@ -135,7 +135,7 @@ BitcoinCore::BitcoinCore(interfaces::Node& node) :
|
|||||||
void BitcoinCore::handleRunawayException(const std::exception *e)
|
void BitcoinCore::handleRunawayException(const std::exception *e)
|
||||||
{
|
{
|
||||||
PrintExceptionContinue(e, "Runaway exception");
|
PrintExceptionContinue(e, "Runaway exception");
|
||||||
Q_EMIT runawayException(QString::fromStdString(m_node.getWarnings("gui")));
|
Q_EMIT runawayException(QString::fromStdString(m_node.getWarnings()));
|
||||||
}
|
}
|
||||||
|
|
||||||
void BitcoinCore::initialize()
|
void BitcoinCore::initialize()
|
||||||
@ -589,10 +589,10 @@ int GuiMain(int argc, char* argv[])
|
|||||||
}
|
}
|
||||||
} catch (const std::exception& e) {
|
} catch (const std::exception& e) {
|
||||||
PrintExceptionContinue(&e, "Runaway exception");
|
PrintExceptionContinue(&e, "Runaway exception");
|
||||||
app.handleRunawayException(QString::fromStdString(node->getWarnings("gui")));
|
app.handleRunawayException(QString::fromStdString(node->getWarnings()));
|
||||||
} catch (...) {
|
} catch (...) {
|
||||||
PrintExceptionContinue(nullptr, "Runaway exception");
|
PrintExceptionContinue(nullptr, "Runaway exception");
|
||||||
app.handleRunawayException(QString::fromStdString(node->getWarnings("gui")));
|
app.handleRunawayException(QString::fromStdString(node->getWarnings()));
|
||||||
}
|
}
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
@ -134,7 +134,7 @@ enum BlockSource ClientModel::getBlockSource() const
|
|||||||
|
|
||||||
QString ClientModel::getStatusBarWarnings() const
|
QString ClientModel::getStatusBarWarnings() const
|
||||||
{
|
{
|
||||||
return QString::fromStdString(m_node.getWarnings("gui"));
|
return QString::fromStdString(m_node.getWarnings());
|
||||||
}
|
}
|
||||||
|
|
||||||
OptionsModel *ClientModel::getOptionsModel()
|
OptionsModel *ClientModel::getOptionsModel()
|
||||||
|
@ -1290,7 +1290,7 @@ UniValue getblockchaininfo(const JSONRPCRequest& request)
|
|||||||
BIP9SoftForkDescPushBack(softforks, "testdummy", consensusParams, Consensus::DEPLOYMENT_TESTDUMMY);
|
BIP9SoftForkDescPushBack(softforks, "testdummy", consensusParams, Consensus::DEPLOYMENT_TESTDUMMY);
|
||||||
obj.pushKV("softforks", softforks);
|
obj.pushKV("softforks", softforks);
|
||||||
|
|
||||||
obj.pushKV("warnings", GetWarnings("statusbar"));
|
obj.pushKV("warnings", GetWarnings(false));
|
||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -254,7 +254,7 @@ static UniValue getmininginfo(const JSONRPCRequest& request)
|
|||||||
obj.pushKV("networkhashps", getnetworkhashps(request));
|
obj.pushKV("networkhashps", getnetworkhashps(request));
|
||||||
obj.pushKV("pooledtx", (uint64_t)mempool.size());
|
obj.pushKV("pooledtx", (uint64_t)mempool.size());
|
||||||
obj.pushKV("chain", Params().NetworkIDString());
|
obj.pushKV("chain", Params().NetworkIDString());
|
||||||
obj.pushKV("warnings", GetWarnings("statusbar"));
|
obj.pushKV("warnings", GetWarnings(false));
|
||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -522,7 +522,7 @@ static UniValue getnetworkinfo(const JSONRPCRequest& request)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
obj.pushKV("localaddresses", localAddresses);
|
obj.pushKV("localaddresses", localAddresses);
|
||||||
obj.pushKV("warnings", GetWarnings("statusbar"));
|
obj.pushKV("warnings", GetWarnings(false));
|
||||||
return obj;
|
return obj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -65,7 +65,7 @@ BOOST_AUTO_TEST_CASE(addtimedata)
|
|||||||
MultiAddTimeData(1, DEFAULT_MAX_TIME_ADJUSTMENT + 1); //filter size 5
|
MultiAddTimeData(1, DEFAULT_MAX_TIME_ADJUSTMENT + 1); //filter size 5
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_CHECK(GetWarnings("gui").find("clock is wrong") != std::string::npos);
|
BOOST_CHECK(GetWarnings(true).find("clock is wrong") != std::string::npos);
|
||||||
|
|
||||||
// nTimeOffset is not changed if the median of offsets exceeds DEFAULT_MAX_TIME_ADJUSTMENT
|
// nTimeOffset is not changed if the median of offsets exceeds DEFAULT_MAX_TIME_ADJUSTMENT
|
||||||
BOOST_CHECK_EQUAL(GetTimeOffset(), 0);
|
BOOST_CHECK_EQUAL(GetTimeOffset(), 0);
|
||||||
|
@ -38,41 +38,34 @@ void SetfLargeWorkInvalidChainFound(bool flag)
|
|||||||
fLargeWorkInvalidChainFound = flag;
|
fLargeWorkInvalidChainFound = flag;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string GetWarnings(const std::string& strFor)
|
std::string GetWarnings(bool verbose)
|
||||||
{
|
{
|
||||||
std::string strStatusBar;
|
std::string warnings_concise;
|
||||||
std::string strGUI;
|
std::string warnings_verbose;
|
||||||
const std::string uiAlertSeperator = "<hr />";
|
const std::string warning_separator = "<hr />";
|
||||||
|
|
||||||
LOCK(cs_warnings);
|
LOCK(cs_warnings);
|
||||||
|
|
||||||
|
// Pre-release build warning
|
||||||
if (!CLIENT_VERSION_IS_RELEASE) {
|
if (!CLIENT_VERSION_IS_RELEASE) {
|
||||||
strStatusBar = "This is a pre-release test build - use at your own risk - do not use for mining or merchant applications";
|
warnings_concise = "This is a pre-release test build - use at your own risk - do not use for mining or merchant applications";
|
||||||
strGUI = _("This is a pre-release test build - use at your own risk - do not use for mining or merchant applications").translated;
|
warnings_verbose = _("This is a pre-release test build - use at your own risk - do not use for mining or merchant applications").translated;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Misc warnings like out of disk space and clock is wrong
|
// Misc warnings like out of disk space and clock is wrong
|
||||||
if (strMiscWarning != "")
|
if (strMiscWarning != "") {
|
||||||
{
|
warnings_concise = strMiscWarning;
|
||||||
strStatusBar = strMiscWarning;
|
warnings_verbose += (warnings_verbose.empty() ? "" : warning_separator) + strMiscWarning;
|
||||||
strGUI += (strGUI.empty() ? "" : uiAlertSeperator) + strMiscWarning;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fLargeWorkForkFound)
|
if (fLargeWorkForkFound) {
|
||||||
{
|
warnings_concise = "Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.";
|
||||||
strStatusBar = "Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.";
|
warnings_verbose += (warnings_verbose.empty() ? "" : warning_separator) + _("Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.").translated;
|
||||||
strGUI += (strGUI.empty() ? "" : uiAlertSeperator) + _("Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.").translated;
|
} else if (fLargeWorkInvalidChainFound) {
|
||||||
}
|
warnings_concise = "Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.";
|
||||||
else if (fLargeWorkInvalidChainFound)
|
warnings_verbose += (warnings_verbose.empty() ? "" : warning_separator) + _("Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.").translated;
|
||||||
{
|
|
||||||
strStatusBar = "Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.";
|
|
||||||
strGUI += (strGUI.empty() ? "" : uiAlertSeperator) + _("Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.").translated;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (strFor == "gui")
|
if (verbose) return warnings_verbose;
|
||||||
return strGUI;
|
else return warnings_concise;
|
||||||
else if (strFor == "statusbar")
|
|
||||||
return strStatusBar;
|
|
||||||
assert(!"GetWarnings(): invalid parameter");
|
|
||||||
return "error";
|
|
||||||
}
|
}
|
||||||
|
@ -13,11 +13,11 @@ void SetfLargeWorkForkFound(bool flag);
|
|||||||
bool GetfLargeWorkForkFound();
|
bool GetfLargeWorkForkFound();
|
||||||
void SetfLargeWorkInvalidChainFound(bool flag);
|
void SetfLargeWorkInvalidChainFound(bool flag);
|
||||||
/** Format a string that describes several potential problems detected by the core.
|
/** Format a string that describes several potential problems detected by the core.
|
||||||
* @param[in] strFor can have the following values:
|
* @param[in] verbose bool
|
||||||
* - "statusbar": get the most important warning
|
* - if true, get all warnings, translated (where possible), separated by <hr />
|
||||||
* - "gui": get all warnings, translated (where possible) for GUI, separated by <hr />
|
* - if false, get the most important warning
|
||||||
* @returns the warning string selected by strFor
|
* @returns the warning string
|
||||||
*/
|
*/
|
||||||
std::string GetWarnings(const std::string& strFor);
|
std::string GetWarnings(bool verbose);
|
||||||
|
|
||||||
#endif // BITCOIN_WARNINGS_H
|
#endif // BITCOIN_WARNINGS_H
|
||||||
|
Loading…
Reference in New Issue
Block a user